diff options
author | Zhizhou Yang <zhizhouy@google.com> | 2017-07-22 01:20:28 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-07-22 01:20:28 +0000 |
commit | ec1dfabf71cfe08796ba80ae03f4857b2797f5f9 (patch) | |
tree | bf139ee25415cecde142e95791edba3803b2452a /crosperf/generate_report_unittest.py | |
parent | 3690e025de8daaed03c4acb02d2b054e5c4c0dd5 (diff) | |
parent | f1a93c225b92dc0059e7d7e2de7c7bd0a493e23d (diff) | |
download | toolchain-utils-ec1dfabf71cfe08796ba80ae03f4857b2797f5f9.tar.gz |
Merge branch 'aosp/mirror-chromium-master' into update_utils am: 4307f4735e am: 18caef1edd am: 6c551e0d52 am: ddfea1f7e7android-wear-9.0.0_r9android-wear-9.0.0_r8android-wear-9.0.0_r7android-wear-9.0.0_r6android-wear-9.0.0_r5android-wear-9.0.0_r4android-wear-9.0.0_r34android-wear-9.0.0_r33android-wear-9.0.0_r32android-wear-9.0.0_r31android-wear-9.0.0_r30android-wear-9.0.0_r3android-wear-9.0.0_r29android-wear-9.0.0_r28android-wear-9.0.0_r27android-wear-9.0.0_r26android-wear-9.0.0_r25android-wear-9.0.0_r24android-wear-9.0.0_r23android-wear-9.0.0_r22android-wear-9.0.0_r21android-wear-9.0.0_r20android-wear-9.0.0_r2android-wear-9.0.0_r19android-wear-9.0.0_r18android-wear-9.0.0_r17android-wear-9.0.0_r16android-wear-9.0.0_r15android-wear-9.0.0_r14android-wear-9.0.0_r13android-wear-9.0.0_r12android-wear-9.0.0_r11android-wear-9.0.0_r10android-wear-9.0.0_r1android-vts-9.0_r9android-vts-9.0_r8android-vts-9.0_r7android-vts-9.0_r6android-vts-9.0_r5android-vts-9.0_r4android-vts-9.0_r19android-vts-9.0_r18android-vts-9.0_r17android-vts-9.0_r16android-vts-9.0_r15android-vts-9.0_r14android-vts-9.0_r13android-vts-9.0_r12android-vts-9.0_r11android-vts-9.0_r10android-security-9.0.0_r76android-security-9.0.0_r75android-security-9.0.0_r74android-security-9.0.0_r73android-security-9.0.0_r72android-security-9.0.0_r71android-security-9.0.0_r70android-security-9.0.0_r69android-security-9.0.0_r68android-security-9.0.0_r67android-security-9.0.0_r66android-security-9.0.0_r65android-security-9.0.0_r64android-security-9.0.0_r63android-security-9.0.0_r62android-o-mr1-iot-release-1.0.4android-o-mr1-iot-release-1.0.3android-cts-9.0_r9android-cts-9.0_r8android-cts-9.0_r7android-cts-9.0_r6android-cts-9.0_r5android-cts-9.0_r4android-cts-9.0_r3android-cts-9.0_r20android-cts-9.0_r2android-cts-9.0_r19android-cts-9.0_r18android-cts-9.0_r17android-cts-9.0_r16android-cts-9.0_r15android-cts-9.0_r14android-cts-9.0_r13android-cts-9.0_r12android-cts-9.0_r11android-cts-9.0_r10android-cts-9.0_r1android-9.0.0_r9android-9.0.0_r8android-9.0.0_r7android-9.0.0_r61android-9.0.0_r60android-9.0.0_r6android-9.0.0_r59android-9.0.0_r58android-9.0.0_r57android-9.0.0_r56android-9.0.0_r55android-9.0.0_r54android-9.0.0_r53android-9.0.0_r52android-9.0.0_r51android-9.0.0_r50android-9.0.0_r5android-9.0.0_r49android-9.0.0_r48android-9.0.0_r47android-9.0.0_r46android-9.0.0_r45android-9.0.0_r44android-9.0.0_r43android-9.0.0_r42android-9.0.0_r41android-9.0.0_r40android-9.0.0_r39android-9.0.0_r38android-9.0.0_r37android-9.0.0_r36android-9.0.0_r35android-9.0.0_r34android-9.0.0_r33android-9.0.0_r32android-9.0.0_r31android-9.0.0_r30android-9.0.0_r3android-9.0.0_r22android-9.0.0_r21android-9.0.0_r20android-9.0.0_r2android-9.0.0_r19android-9.0.0_r18android-9.0.0_r17android-9.0.0_r16android-9.0.0_r12android-9.0.0_r11android-9.0.0_r10android-9.0.0_r1security-pi-releasepie-vts-releasepie-security-releasepie-s2-releasepie-release-2pie-releasepie-r2-s2-releasepie-r2-s1-releasepie-r2-releasepie-qpr3-s1-releasepie-qpr3-releasepie-qpr3-b-releasepie-qpr2-releasepie-qpr1-s3-releasepie-qpr1-s2-releasepie-qpr1-s1-releasepie-qpr1-releasepie-platform-releasepie-gsipie-dr1-releasepie-dr1-devpie-devpie-cuttlefish-testingpie-cts-releasepie-b4s4-releasepie-b4s4-dev
am: f1a93c225b
Change-Id: I60d258ddb8fd0bf9632f1f70c5cdeb3078938059
Diffstat (limited to 'crosperf/generate_report_unittest.py')
-rwxr-xr-x | crosperf/generate_report_unittest.py | 62 |
1 files changed, 44 insertions, 18 deletions
diff --git a/crosperf/generate_report_unittest.py b/crosperf/generate_report_unittest.py index a5d00635..bbb0c0ae 100755 --- a/crosperf/generate_report_unittest.py +++ b/crosperf/generate_report_unittest.py @@ -19,8 +19,10 @@ import unittest import generate_report import results_report + class _ContextualStringIO(StringIO): """StringIO that can be used in `with` statements.""" + def __init__(self, *args): StringIO.__init__(self, *args) @@ -33,6 +35,7 @@ class _ContextualStringIO(StringIO): class GenerateReportTests(unittest.TestCase): """Tests for generate_report.py.""" + def testCountBenchmarks(self): runs = { 'foo': [[{}, {}, {}], [{}, {}, {}, {}]], @@ -45,16 +48,33 @@ class GenerateReportTests(unittest.TestCase): def testCutResultsInPlace(self): bench_data = { - 'foo': [[{'a': 1, 'b': 2, 'c': 3}, {'a': 3, 'b': 2.5, 'c': 1}]], - 'bar': [[{'d': 11, 'e': 12, 'f': 13}]], - 'baz': [[{'g': 12, 'h': 13}]], - 'qux': [[{'i': 11}]], + 'foo': [[{ + 'a': 1, + 'b': 2, + 'c': 3 + }, { + 'a': 3, + 'b': 2.5, + 'c': 1 + }]], + 'bar': [[{ + 'd': 11, + 'e': 12, + 'f': 13 + }]], + 'baz': [[{ + 'g': 12, + 'h': 13 + }]], + 'qux': [[{ + 'i': 11 + }]], } original_bench_data = copy.deepcopy(bench_data) max_keys = 2 - results = generate_report.CutResultsInPlace(bench_data, max_keys=max_keys, - complain_on_update=False) + results = generate_report.CutResultsInPlace( + bench_data, max_keys=max_keys, complain_on_update=False) # Cuts should be in-place. self.assertIs(results, bench_data) self.assertItemsEqual(original_bench_data.keys(), bench_data.keys()) @@ -68,15 +88,21 @@ class GenerateReportTests(unittest.TestCase): # sub_keyvals must be a subset of original_keyvals self.assertDictContainsSubset(sub_keyvals, original_keyvals) - def testCutResultsInPlaceLeavesRetval(self): bench_data = { - 'foo': [[{'retval': 0, 'a': 1}]], - 'bar': [[{'retval': 1}]], - 'baz': [[{'RETVAL': 1}]], + 'foo': [[{ + 'retval': 0, + 'a': 1 + }]], + 'bar': [[{ + 'retval': 1 + }]], + 'baz': [[{ + 'RETVAL': 1 + }]], } - results = generate_report.CutResultsInPlace(bench_data, max_keys=0, - complain_on_update=False) + results = generate_report.CutResultsInPlace( + bench_data, max_keys=0, complain_on_update=False) # Just reach into results assuming we know it otherwise outputs things # sanely. If it doesn't, testCutResultsInPlace should give an indication as # to what, exactly, is broken. @@ -121,12 +147,12 @@ class GenerateReportTests(unittest.TestCase): # We only mock print_exc so we don't have exception info printed to stdout. @mock.patch('generate_report.WriteFile', side_effect=ValueError('Oh noo')) @mock.patch('traceback.print_exc') - def testRunActionsRunsAllActionsRegardlessOfExceptions(self, mock_print_exc, - mock_write_file): + def testRunActionsRunsAllActionsRegardlessOfExceptions( + self, mock_print_exc, mock_write_file): actions = [(None, 'json'), (None, 'html'), (None, 'text'), (None, 'email')] output_prefix = '-' - ok = generate_report.RunActions(actions, {}, output_prefix, overwrite=False, - verbose=False) + ok = generate_report.RunActions( + actions, {}, output_prefix, overwrite=False, verbose=False) self.assertFalse(ok) self.assertEqual(mock_write_file.call_count, len(actions)) self.assertEqual(mock_print_exc.call_count, len(actions)) @@ -135,8 +161,8 @@ class GenerateReportTests(unittest.TestCase): def testRunActionsReturnsTrueIfAllActionsSucceed(self, mock_write_file): actions = [(None, 'json'), (None, 'html'), (None, 'text')] output_prefix = '-' - ok = generate_report.RunActions(actions, {}, output_prefix, overwrite=False, - verbose=False) + ok = generate_report.RunActions( + actions, {}, output_prefix, overwrite=False, verbose=False) self.assertEqual(mock_write_file.call_count, len(actions)) self.assertTrue(ok) |