Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(308)

Unified Diff: third_party/WebKit/Tools/Scripts/webkitpy/tool/commands/rebaseline_cl.py

Issue 2765863003: Refactoring: Replace test_prefix_list variables with TestBaselineSet objects. (Closed)
Patch Set: fix typo, return set from _builders_to_fetch_from Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Tools/Scripts/webkitpy/tool/commands/rebaseline_cl.py
diff --git a/third_party/WebKit/Tools/Scripts/webkitpy/tool/commands/rebaseline_cl.py b/third_party/WebKit/Tools/Scripts/webkitpy/tool/commands/rebaseline_cl.py
index 5fe34cae5fabe1ec6f977dbdb26082de19a49151..71349d22c8602344f4363c4e5685f84e6b9f6872 100644
--- a/third_party/WebKit/Tools/Scripts/webkitpy/tool/commands/rebaseline_cl.py
+++ b/third_party/WebKit/Tools/Scripts/webkitpy/tool/commands/rebaseline_cl.py
@@ -9,7 +9,7 @@ import logging
import optparse
from webkitpy.common.net.git_cl import GitCL
-from webkitpy.tool.commands.rebaseline import AbstractParallelRebaselineCommand
+from webkitpy.tool.commands.rebaseline import AbstractParallelRebaselineCommand, TestBaselineSet
from webkitpy.w3c.wpt_manifest import WPTManifest
_log = logging.getLogger(__name__)
@@ -86,19 +86,20 @@ class RebaselineCL(AbstractParallelRebaselineCommand):
if builds_to_results is None:
return 1
- test_prefix_list = {}
+ test_baseline_set = TestBaselineSet(tool)
if args:
for test in args:
- test_prefix_list[test] = builds
+ for build in builds:
+ test_baseline_set.add(test, build)
else:
- test_prefix_list = self._test_prefix_list(
+ test_baseline_set = self._make_test_baseline_set(
builds_to_results,
only_changed_tests=options.only_changed_tests)
- self._log_test_prefix_list(test_prefix_list)
+ _log.debug('Rebaselining: %s', test_baseline_set)
if not options.dry_run:
- self.rebaseline(options, test_prefix_list)
+ self.rebaseline(options, test_baseline_set)
return 0
def _get_issue_number(self):
@@ -160,7 +161,7 @@ class RebaselineCL(AbstractParallelRebaselineCommand):
results[build] = layout_test_results
return results
- def _test_prefix_list(self, builds_to_results, only_changed_tests):
+ def _make_test_baseline_set(self, builds_to_results, only_changed_tests):
"""Returns a dict which lists the set of baselines to fetch.
The dict that is returned is a dict of tests to Build objects
@@ -185,15 +186,14 @@ class RebaselineCL(AbstractParallelRebaselineCommand):
# TODO(qyearsley): Do this without using a hard-coded constant.
test_base = 'third_party/WebKit/LayoutTests/'
tests_in_cl = [f[len(test_base):] for f in files_in_cl if f.startswith(test_base)]
- result = {}
+
+ test_baseline_set = TestBaselineSet(self._tool)
for build, tests in builds_to_tests.iteritems():
for test in tests:
if only_changed_tests and test not in tests_in_cl:
continue
- if test not in result:
- result[test] = []
- result[test].append(build)
- return result
+ test_baseline_set.add(test, build)
+ return test_baseline_set
def _tests_to_rebaseline(self, build, layout_test_results):
"""Fetches a list of tests that should be rebaselined for some build."""
@@ -220,15 +220,3 @@ class RebaselineCL(AbstractParallelRebaselineCommand):
except (ValueError, KeyError):
_log.warning('Unexpected retry summary content:\n%s', content)
return None
-
- @staticmethod
- def _log_test_prefix_list(test_prefix_list):
- """Logs the tests to download new baselines for."""
- if not test_prefix_list:
- _log.info('No tests to rebaseline; exiting.')
- return
- _log.debug('Tests to rebaseline:')
- for test, builds in test_prefix_list.iteritems():
- _log.debug(' %s:', test)
- for build in sorted(builds):
- _log.debug(' %s', build)

Powered by Google App Engine
This is Rietveld 408576698