diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2021-05-20 09:47:09 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2021-06-07 11:15:42 +0000 |
commit | 189d4fd8fad9e3c776873be51938cd31a42b6177 (patch) | |
tree | 6497caeff5e383937996768766ab3bb2081a40b2 /chromium/testing/scripts/run_performance_tests_unittest.py | |
parent | 8bc75099d364490b22f43a7ce366b366c08f4164 (diff) | |
download | qtwebengine-chromium-189d4fd8fad9e3c776873be51938cd31a42b6177.tar.gz |
BASELINE: Update Chromium to 90.0.4430.221
Change-Id: Iff4d9d18d2fcf1a576f3b1f453010f744a232920
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/testing/scripts/run_performance_tests_unittest.py')
-rw-r--r-- | chromium/testing/scripts/run_performance_tests_unittest.py | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/chromium/testing/scripts/run_performance_tests_unittest.py b/chromium/testing/scripts/run_performance_tests_unittest.py new file mode 100644 index 00000000000..5389941c4ac --- /dev/null +++ b/chromium/testing/scripts/run_performance_tests_unittest.py @@ -0,0 +1,80 @@ +# Copyright (c) 2021 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +import unittest +import json + +import run_performance_tests +from run_performance_tests import TelemetryCommandGenerator + +# The path where the output of a wpt run was written. This is the file that +# gets processed by BaseWptScriptAdapter. +OUTPUT_JSON_FILENAME = "out.json" + + +class TelemetryCommandGeneratorTest(unittest.TestCase): + def setUp(self): + fake_args = [ + './run_benchmark', + '--isolated-script-test-output=output.json' + ] + self._fake_options = run_performance_tests.parse_arguments(fake_args) + + def testStorySelectionBeginEnd(self): + story_selection_config = json.loads( + '{"begin": 11, "end": 21, "abridged": false}') + generator = TelemetryCommandGenerator( + 'benchmark_name', self._fake_options, story_selection_config + ) + command = generator.generate('output_dir') + self.assertIn('--story-shard-begin-index=11', command) + self.assertIn('--story-shard-end-index=21', command) + self.assertNotIn('--run-abridged-story-set', command) + + + def testStorySelectionAbridgedDefault(self): + story_selection_config = json.loads( + '{"begin": 11, "end": 21}') + generator = TelemetryCommandGenerator( + 'benchmark_name', self._fake_options, story_selection_config + ) + command = generator.generate('output_dir') + self.assertIn('--run-abridged-story-set', command) + + def testStorySelectionIndexSectionsSingleIndex(self): + story_selection_config = json.loads( + '{"sections": [{"begin": 11, "end": 21}, {"begin": 25, "end": 26}]}') + generator = TelemetryCommandGenerator( + 'benchmark_name', self._fake_options, story_selection_config + ) + command = generator.generate('output_dir') + self.assertIn('--story-shard-indexes=11-21,25', command) + + def testStorySelectionIndexSectionsOpenEnds(self): + story_selection_config = json.loads( + '{"sections": [{"end": 10}, {"begin": 15, "end": 16}, {"begin": 20}]}') + generator = TelemetryCommandGenerator( + 'benchmark_name', self._fake_options, story_selection_config + ) + command = generator.generate('output_dir') + self.assertIn('--story-shard-indexes=-10,15,20-', command) + + + def testStorySelectionIndexSectionsIllegalRange(self): + with self.assertRaises(ValueError): + story_selection_config = json.loads( + '{"sections": [{"begin": 15, "end": 16}, {"foo": "bar"}]}') + generator = TelemetryCommandGenerator( + 'benchmark_name', self._fake_options, story_selection_config + ) + generator.generate('output_dir') + + def testStorySelectionIndexSectionsEmpty(self): + story_selection_config = json.loads( + '{"sections": []}') + generator = TelemetryCommandGenerator( + 'benchmark_name', self._fake_options, story_selection_config + ) + command = generator.generate('output_dir') + self.assertNotIn('--story-shard-indexes=', command)
\ No newline at end of file |