1 // Copyright 2023 The Chromium Authors 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 package org.chromium.base.test.metrics; 6 7 import androidx.test.filters.MediumTest; 8 9 import org.junit.Test; 10 import org.junit.runner.RunWith; 11 12 import org.chromium.base.test.BaseJUnit4ClassRunner; 13 import org.chromium.base.test.util.Batch; 14 import org.chromium.base.test.util.HistogramWatcher; 15 16 /** 17 * Tests the {@link HistogramWatcher} test util after native load. 18 * 19 * Both histogram snapshots are taken through NativeUmaRecorder, so the deltas are calculated 20 * across the less granular buckets that native generates. 21 */ 22 @RunWith(BaseJUnit4ClassRunner.class) 23 @Batch(Batch.PER_CLASS) 24 public class HistogramWatcherWithNativeTest extends HistogramWatcherTestBase { 25 @Test 26 @MediumTest testSingleRecordMissing_failure()27 public void testSingleRecordMissing_failure() { 28 doTestSingleRecordMissing_failure(TestScenario.WITH_NATIVE); 29 } 30 31 @Test 32 @MediumTest testFourTimesHistograms_success()33 public void testFourTimesHistograms_success() { 34 doTestFourTimesHistograms_success(TestScenario.WITH_NATIVE); 35 } 36 37 @Test 38 @MediumTest testExtraRecord_failure()39 public void testExtraRecord_failure() { 40 doTestExtraRecord_failure(TestScenario.WITH_NATIVE); 41 } 42 43 @Test 44 @MediumTest testExtraRecordAllowed_success()45 public void testExtraRecordAllowed_success() { 46 doTestExtraRecordAllowed_success(TestScenario.WITH_NATIVE); 47 } 48 49 @Test 50 @MediumTest testExtraRecordAllowed_failure()51 public void testExtraRecordAllowed_failure() { 52 doTestExtraRecordAllowed_failure(TestScenario.WITH_NATIVE); 53 } 54 55 @Test 56 @MediumTest testExtraRecordAllowedAny_success()57 public void testExtraRecordAllowedAny_success() { 58 doTestExtraRecordAllowedAny_success(TestScenario.WITH_NATIVE); 59 } 60 61 @Test 62 @MediumTest testExtraRecordAllowedAny_failure()63 public void testExtraRecordAllowedAny_failure() { 64 doTestExtraRecordAllowedAny_failure(TestScenario.WITH_NATIVE); 65 } 66 67 @Test 68 @MediumTest testMissingRecord_failure()69 public void testMissingRecord_failure() { 70 doTestMissingLastRecord_failure(TestScenario.WITH_NATIVE); 71 } 72 73 @Test 74 @MediumTest testExpectNoRecords_failure()75 public void testExpectNoRecords_failure() { 76 doTestExpectNoRecords_failure(TestScenario.WITH_NATIVE); 77 } 78 79 @Test 80 @MediumTest testExpectAnyRecords_missing_failure()81 public void testExpectAnyRecords_missing_failure() { 82 doTestExpectAnyRecords_missing_failure(TestScenario.WITH_NATIVE); 83 } 84 85 @Test 86 @MediumTest testExpectAnyRecords_extras_failure()87 public void testExpectAnyRecords_extras_failure() { 88 doTestExpectAnyRecords_extras_failure(TestScenario.WITH_NATIVE); 89 } 90 91 @Test 92 @MediumTest testExpectAnyRecords_success()93 public void testExpectAnyRecords_success() { 94 doTestExpectAnyRecords_success(TestScenario.WITH_NATIVE); 95 } 96 97 @Test 98 @MediumTest testMultipleHistograms_success()99 public void testMultipleHistograms_success() { 100 doTestMultipleHistograms_success(TestScenario.WITH_NATIVE); 101 } 102 103 @Test 104 @MediumTest testMultipleHistograms_failure()105 public void testMultipleHistograms_failure() { 106 doTestMultipleHistograms_failure(TestScenario.WITH_NATIVE); 107 } 108 109 @Test 110 @MediumTest testIgnoreOtherHistograms_success()111 public void testIgnoreOtherHistograms_success() { 112 doTestIgnoreOtherHistograms_success(TestScenario.WITH_NATIVE); 113 } 114 115 @Test 116 @MediumTest testExpectIntRecords_success()117 public void testExpectIntRecords_success() { 118 doTestExpectIntRecords_success(TestScenario.WITH_NATIVE); 119 } 120 121 @Test 122 @MediumTest testExpectIntRecords_failure()123 public void testExpectIntRecords_failure() { 124 doTestExpectIntRecords_failure(TestScenario.WITH_NATIVE); 125 } 126 127 @Test 128 @MediumTest testMissingFirstRecord_failure()129 public void testMissingFirstRecord_failure() { 130 doTestMissingFirstRecord_failure(TestScenario.WITH_NATIVE); 131 } 132 133 @Test 134 @MediumTest testMissingMiddleRecord_failure()135 public void testMissingMiddleRecord_failure() { 136 doTestMissingMiddleRecord_failure(TestScenario.WITH_NATIVE); 137 } 138 } 139