Title: [273999] trunk/Tools
Revision
273999
Author
jbed...@apple.com
Date
2021-03-05 13:11:19 -0800 (Fri, 05 Mar 2021)

Log Message

[run-webkit-tests] Delete old results server code
https://bugs.webkit.org/show_bug.cgi?id=222393
<rdar://problem/74722220>

Rubber-stamped by Alexey Proskuryakov.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._end_test_run): Remove upload code.
(Manager._save_json_files): Renamed from _upload_json_files.
(Manager._upload_json_files): Renamed to _save_json_files.
(Manager.upload_results): Deleted.
* Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
(JSONLayoutResultsGenerator.__init__): Remove buildbot arguments.
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
(JSONResultsGenerator):
(JSONResultsGenerator.__init__): Remove buildbot arguments.
(JSONResultsGenerator.get_json): Remove concept of builder.
(JSONResultsGenerator.upload_json_files): Deleted.
(JSONResultsGenerator._get_svn_revision): Deleted.
(JSONResultsGenerator._get_archived_json_results): Deleted.
(JSONResultsGenerator._insert_generic_metadata): Deleted.
(JSONResultsGenerator._convert_json_to_current_version): Deleted.
(JSONResultsGenerator._convert_tests_to_trie): Deleted.
(JSONResultsGenerator._remove_items_over_max_number_of_builds): Deleted.
(JSONResultsGenerator._normalize_results_json): Deleted.
(JSONResultsGenerator._is_results_all_of_type): Deleted.
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
(JSONGeneratorTest.setUp):
(JSONGeneratorTest._test_json_generation):
(JSONGeneratorTest._verify_json_results):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args): Remove arguments used to upload to old results database.

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (273998 => 273999)


--- trunk/Tools/ChangeLog	2021-03-05 21:09:42 UTC (rev 273998)
+++ trunk/Tools/ChangeLog	2021-03-05 21:11:19 UTC (rev 273999)
@@ -1,3 +1,38 @@
+2021-03-05  Jonathan Bedard  <jbed...@apple.com>
+
+        [run-webkit-tests] Delete old results server code
+        https://bugs.webkit.org/show_bug.cgi?id=222393
+        <rdar://problem/74722220>
+
+        Rubber-stamped by Alexey Proskuryakov.
+
+        * Scripts/webkitpy/layout_tests/controllers/manager.py:
+        (Manager._end_test_run): Remove upload code.
+        (Manager._save_json_files): Renamed from _upload_json_files.
+        (Manager._upload_json_files): Renamed to _save_json_files.
+        (Manager.upload_results): Deleted.
+        * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
+        (JSONLayoutResultsGenerator.__init__): Remove buildbot arguments.
+        * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
+        (JSONResultsGenerator):
+        (JSONResultsGenerator.__init__): Remove buildbot arguments.
+        (JSONResultsGenerator.get_json): Remove concept of builder.
+        (JSONResultsGenerator.upload_json_files): Deleted.
+        (JSONResultsGenerator._get_svn_revision): Deleted.
+        (JSONResultsGenerator._get_archived_json_results): Deleted.
+        (JSONResultsGenerator._insert_generic_metadata): Deleted.
+        (JSONResultsGenerator._convert_json_to_current_version): Deleted.
+        (JSONResultsGenerator._convert_tests_to_trie): Deleted.
+        (JSONResultsGenerator._remove_items_over_max_number_of_builds): Deleted.
+        (JSONResultsGenerator._normalize_results_json): Deleted.
+        (JSONResultsGenerator._is_results_all_of_type): Deleted.
+        * Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
+        (JSONGeneratorTest.setUp):
+        (JSONGeneratorTest._test_json_generation):
+        (JSONGeneratorTest._verify_json_results):
+        * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
+        (parse_args): Remove arguments used to upload to old results database.
+
 2021-03-05  Chris Dumez  <cdu...@apple.com>
 
         Regression(r268097): WKWebView.URL is nil in the processDidTerminate delegate

Modified: trunk/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py (273998 => 273999)


--- trunk/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py	2021-03-05 21:09:42 UTC (rev 273998)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py	2021-03-05 21:11:19 UTC (rev 273999)
@@ -399,9 +399,6 @@
 
         _log.debug("summarizing results")
         summarized_results = test_run_results.summarize_results(self._port, self._expectations, initial_results, retry_results, enabled_pixel_tests_in_retry)
-        results_including_passes = None
-        if self._options.results_server_host:
-            results_including_passes = test_run_results.summarize_results(self._port, self._expectations, initial_results, retry_results, enabled_pixel_tests_in_retry, include_passes=True, include_time_and_modifiers=True)
         self._printer.print_results(end_time - start_time, initial_results, summarized_results)
 
         exit_code = -1
@@ -408,7 +405,7 @@
         if not self._options.dry_run:
             self._port.print_leaks_summary()
             self._output_perf_metrics(end_time - start_time, initial_results)
-            self._upload_json_files(summarized_results, initial_results, results_including_passes, start_time, end_time)
+            self._save_json_files(summarized_results, initial_results)
 
             results_path = self._filesystem.join(self._results_directory, "results.html")
             self._copy_results_html_file(results_path)
@@ -534,7 +531,7 @@
                 ), results_trie)
         return results_trie
 
-    def _upload_json_files(self, summarized_results, initial_results, results_including_passes=None, start_time=None, end_time=None):
+    def _save_json_files(self, summarized_results, initial_results):
         """Writes the results of the test run as JSON files into the results
         dir and upload the files to the appengine server.
 
@@ -557,17 +554,10 @@
         # We write full_results.json out as jsonp because we need to load it from a file url and Chromium doesn't allow that.
         json_results_generator.write_json(self._filesystem, summarized_results, full_results_path, callback="ADD_RESULTS")
 
-        results_json_path = self._filesystem.join(self._results_directory, "results_including_passes.json")
-        if results_including_passes:
-            json_results_generator.write_json(self._filesystem, results_including_passes, results_json_path)
-
         generator = json_layout_results_generator.JSONLayoutResultsGenerator(
-            self._port, self._options.builder_name, self._options.build_name,
-            self._options.build_number, self._results_directory,
+            self._port, self._results_directory,
             self._expectations, initial_results,
-            self._options.test_results_server,
-            "layout-tests",
-            self._options.master_name)
+            "layout-tests")
 
         if generator.generate_json_output():
             _log.debug("Finished writing JSON file for the test results server.")
@@ -575,12 +565,6 @@
             _log.debug("Failed to generate JSON file for the test results server.")
             return
 
-        json_files = ["incremental_results.json", "full_results.json", "times_ms.json"]
-
-        generator.upload_json_files(json_files)
-        if results_including_passes:
-            self.upload_results(results_json_path, start_time, end_time)
-
         incremental_results_path = self._filesystem.join(self._results_directory, "incremental_results.json")
 
         # Remove these files from the results directory so they don't take up too much space on the buildbot.
@@ -587,67 +571,7 @@
         # The tools use the version we uploaded to the results server anyway.
         self._filesystem.remove(times_json_path)
         self._filesystem.remove(incremental_results_path)
-        if results_including_passes:
-            self._filesystem.remove(results_json_path)
 
-    def upload_results(self, results_json_path, start_time, end_time):
-        if not self._options.results_server_host:
-            return
-        master_name = self._options.master_name
-        builder_name = self._options.builder_name
-        build_number = self._options.build_number
-        build_worker = self._options.build_slave
-        if not master_name or not builder_name or not build_number or not build_worker:
-            _log.error("--results-server-host was set, but --master-name, --builder-name, --build-number, or --build-slave was not. Not uploading JSON files.")
-            return
-
-        revisions = {}
-        # FIXME: This code is duplicated in PerfTestRunner._generate_results_dict
-        for (name, path) in self._port.repository_paths():
-            scm = SCMDetector(self._port.host.filesystem, self._port.host.executive).detect_scm_system(path) or self._port.host.scm()
-            revision = scm.native_revision(path)
-            revisions[name] = {'revision': revision, 'timestamp': scm.timestamp_of_native_revision(path, revision)}
-
-        for hostname in self._options.results_server_host:
-            _log.info("Uploading JSON files for master: {} builder: {} build: {} worker: {} to {}".format(master_name, builder_name, build_number, build_worker, hostname))
-
-            attrs = [
-                ('master', 'build.webkit.org' if master_name == 'webkit.org' else master_name),  # FIXME: Pass in build.webkit.org.
-                ('builder_name', builder_name),
-                ('build_number', build_number),
-                ('build_slave', build_worker),
-                ('revisions', json.dumps(revisions)),
-                ('start_time', str(start_time)),
-                ('end_time', str(end_time)),
-            ]
-
-            uploader = FileUploader("http://%s/api/report" % hostname, 360)
-            try:
-                response = uploader.upload_as_multipart_form_data(self._filesystem, [('results.json', results_json_path)], attrs)
-                if not response:
-                    _log.error("JSON upload failed; no response returned")
-                    continue
-
-                if response.code != 200:
-                    _log.error("JSON upload failed, %d: '%s'" % (response.code, response.read()))
-                    continue
-
-                response_text = response.read()
-                try:
-                    response_json = json.loads(response_text)
-                except ValueError:
-                    _log.error("JSON upload failed; failed to parse the response: %s", response_text)
-                    continue
-
-                if response_json['status'] != 'OK':
-                    _log.error("JSON upload failed, %s: %s", response_json['status'], response_text)
-                    continue
-
-                _log.info("JSON uploaded.")
-            except Exception as error:
-                _log.error("Upload failed: %s" % error)
-                continue
-
     def _copy_results_html_file(self, destination_path):
         base_dir = self._port.path_from_webkit_base('LayoutTests', 'fast', 'harness')
         results_file = self._filesystem.join(base_dir, 'results.html')

Modified: trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py (273998 => 273999)


--- trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py	2021-03-05 21:09:42 UTC (rev 273998)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py	2021-03-05 21:11:19 UTC (rev 273999)
@@ -53,10 +53,10 @@
                        test_expectations.LEAK: "L",
                        test_expectations.IMAGE_PLUS_TEXT: "Z"}
 
-    def __init__(self, port, builder_name, build_name, build_number,
+    def __init__(self, port,
         results_file_base_path,
         expectations_by_type, run_results,
-        test_results_servers=[], test_type="", master_name=""):
+        test_type=""):
         """Modifies the results.json file. Grabs it off the archive directory
         if it is not found locally.
 
@@ -64,9 +64,9 @@
           run_results: TestRunResults object storing the details of the test run.
         """
         super(JSONLayoutResultsGenerator, self).__init__(
-            port, builder_name, build_name, build_number, results_file_base_path,
+            port, results_file_base_path,
             {}, port.repository_paths(),
-            test_results_servers, test_type, master_name)
+            test_type)
 
         self._expectations = expectations_by_type
 

Modified: trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py (273998 => 273999)


--- trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py	2021-03-05 21:09:42 UTC (rev 273998)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py	2021-03-05 21:11:19 UTC (rev 273999)
@@ -241,11 +241,8 @@
                         TestResult.FAILS: FAIL_RESULT,
                         TestResult.FLAKY: FLAKY_RESULT}
 
-    VERSION = 4
-    VERSION_KEY = "version"
     RESULTS = "results"
     TIMES = "times"
-    BUILD_NUMBERS = "buildNumbers"
     TIME = "secondsSinceEpoch"
     TESTS = "tests"
 
@@ -259,20 +256,15 @@
 
     URL_FOR_TEST_LIST_JSON = "http://%s/testfile?builder=%s&name=%s&testlistjson=1&testtype=%s&master=%s"
 
-    def __init__(self, port, builder_name, build_name, build_number,
+    def __init__(self, port,
         results_file_base_path,
         test_results_map, svn_repositories=None,
-        test_results_server=[],
-        test_type="",
-        master_name=""):
+        test_type=""):
         """Modifies the results.json file. Grabs it off the archive directory
         if it is not found locally.
 
         Args
           port: port-specific wrapper
-          builder_name: the builder name (e.g. Webkit).
-          build_name: the build name (e.g. webkit-rel).
-          build_number: the build number.
           results_file_base_path: Absolute path to the directory containing the
               results json file.
           test_results_map: A dictionary that maps test_name to TestResult.
@@ -279,16 +271,11 @@
           svn_repositories: A (json_field_name, svn_path) pair for SVN
               repositories that tests rely on.  The SVN revision will be
               included in the JSON with the given json_field_name.
-          test_results_server: server that hosts test results json.
           test_type: test type string (e.g. 'layout-tests').
-          master_name: the name of the buildbot master.
         """
         self._port = port
         self._filesystem = port._filesystem
         self._executive = port._executive
-        self._builder_name = builder_name
-        self._build_name = build_name
-        self._build_number = build_number
         self._results_directory = results_file_base_path
 
         self._test_results_map = test_results_map
@@ -298,9 +285,7 @@
         if not self._svn_repositories:
             self._svn_repositories = {}
 
-        self._test_results_servers = test_results_server
         self._test_type = test_type
-        self._master_name = master_name
 
         self._archived_results = None
 
@@ -319,37 +304,9 @@
         file_path = self._filesystem.join(self._results_directory, self.TIMES_MS_FILENAME)
         write_json(self._filesystem, times, file_path)
 
-    def get_json(self, server_index=0):
+    def get_json(self):
         """Gets the results for the results.json file."""
-        results_json = {}
-
-        if not results_json:
-            results_json, error = self._get_archived_json_results(server_index=server_index)
-            if error:
-                # If there was an error don't write a results.json
-                # file at all as it would lose all the information on the
-                # bot.
-                _log.error("Archive directory is inaccessible. Not "
-                           "modifying or clobbering the results.json "
-                           "file: " + str(error))
-                return None
-
-        builder_name = self._builder_name
-        if results_json and builder_name not in results_json:
-            _log.debug("Builder name (%s) is not in the results.json file."
-                       % builder_name)
-
-        self._convert_json_to_current_version(results_json)
-
-        if builder_name not in results_json:
-            results_json[builder_name] = (
-                self._create_results_for_builder_json())
-
-        results_for_builder = results_json[builder_name]
-
-        if builder_name:
-            self._insert_generic_metadata(results_for_builder)
-
+        results_for_builder = self._create_results_for_builder_json()
         self._insert_failure_summaries(results_for_builder)
 
         # Update the all failing tests with result type and time.
@@ -360,47 +317,13 @@
         for test in all_failing_tests:
             self._insert_test_time_and_result(test, tests)
 
-        return results_json
+        return dict(
+            results=results_for_builder,
+        )
 
     def set_archived_results(self, archived_results):
         self._archived_results = archived_results
 
-    def upload_json_files(self, json_files):
-        """Uploads the given json_files to the test_results_server (if the
-        test_results_server is given)."""
-        if not self._test_results_servers:
-            return
-
-        if not self._master_name:
-            _log.error("--test-results-server was set, but --master-name was not.  Not uploading JSON files.")
-            return
-
-        _log.info("Uploading JSON files for builder: %s", self._builder_name)
-        attrs = [("builder", self._builder_name),
-                 ("testtype", self._test_type),
-                 ("master", self._master_name)]
-
-        files = [(file, self._filesystem.join(self._results_directory, file))
-            for file in json_files]
-
-        for test_results_server in self._test_results_servers:
-            url = "" % test_results_server
-            # Set uploading timeout in case appengine server is having problems.
-            # 120 seconds are more than enough to upload test results.
-            uploader = FileUploader(url, 120)
-            try:
-                response = uploader.upload_as_multipart_form_data(self._filesystem, files, attrs)
-                if response:
-                    if response.code == 200:
-                        _log.info("JSON uploaded.")
-                    else:
-                        _log.debug("JSON upload failed, %d: '%s'" % (response.code, response.read()))
-                else:
-                    _log.error("JSON upload failed; no response returned")
-            except Exception as err:
-                _log.error("Upload failed: %s" % err)
-                continue
-
     def _get_test_timing(self, test_name):
         """Returns test timing data (elapsed time) in second
         for the given test_name."""
@@ -444,69 +367,6 @@
 
         return self.__class__.PASS_RESULT
 
-    def _get_svn_revision(self, in_directory):
-        """Returns the svn revision for the given directory.
-
-        Args:
-          in_directory: The directory where svn is to be run.
-        """
-        scm = SCMDetector(self._filesystem, self._executive).detect_scm_system(in_directory)
-        if scm:
-            return scm.svn_revision(in_directory)
-        return ""
-
-    def _get_archived_json_results(self, server_index=0):
-        """Download JSON file that only contains test
-        name list from test-results server. This is for generating incremental
-        JSON so the file generated has info for tests that failed before but
-        pass or are skipped from current run.
-
-        Returns (archived_results, error) tuple where error is None if results
-        were successfully read.
-        """
-        results_json = {}
-        old_results = None
-        error = None
-
-        if len(self._test_results_servers) <= server_index:
-            return {}, None
-
-        results_file_url = (self.URL_FOR_TEST_LIST_JSON %
-            (quote(self._test_results_servers[server_index]),
-             quote(self._builder_name),
-             self.RESULTS_FILENAME,
-             quote(self._test_type),
-             quote(self._master_name)))
-
-        try:
-            # FIXME: We should talk to the network via a Host object.
-            results_file = urlopen(results_file_url)
-            info = results_file.info()
-            old_results = results_file.read()
-        except HTTPError as http_error:
-            # A non-4xx status code means the bot is hosed for some reason
-            # and we can't grab the results.json file off of it.
-            if (http_error.code < 400 and http_error.code >= 500):
-                error = http_error
-        except URLError as url_error:
-            error = url_error
-
-        if old_results:
-            # Strip the prefix and suffix so we can get the actual JSON object.
-            old_results = strip_json_wrapper(old_results)
-
-            try:
-                results_json = json.loads(old_results)
-            except:
-                _log.debug("results.json was not valid JSON. Clobbering.")
-                # The JSON file is not valid JSON. Just clobber the results.
-                results_json = {}
-        else:
-            _log.debug('Old JSON results do not exist. Starting fresh.')
-            results_json = {}
-
-        return results_json, error
-
     def _insert_failure_summaries(self, results_for_builder):
         """Inserts aggregate pass/failure statistics into the JSON.
         This method reads self._test_results and generates
@@ -572,23 +432,6 @@
             # we want the serialized form to be concise.
             encoded_results.insert(0, [1, item])
 
-    def _insert_generic_metadata(self, results_for_builder):
-        """ Inserts generic metadata (such as version number, current time etc)
-        into the JSON.
-
-        Args:
-          results_for_builder: Dictionary containing the test results for
-              a single builder.
-        """
-        self._insert_item_into_raw_list(results_for_builder,
-            self._build_number, self.BUILD_NUMBERS)
-
-        # Include SVN revisions for the given repositories.
-        for (name, path) in self._svn_repositories:
-            self._insert_item_into_raw_list(results_for_builder, self._get_svn_revision(path), name.lower() + 'Revision')
-
-        self._insert_item_into_raw_list(results_for_builder, int(time.time()), self.TIME)
-
     def _insert_test_time_and_result(self, test_name, tests):
         """ Insert a test item with its results to the given tests dictionary.
 
@@ -618,37 +461,6 @@
         else:
             this_test[self.TIMES] = [[1, time]]
 
-    def _convert_json_to_current_version(self, results_json):
-        """If the JSON does not match the current version, converts it to the
-        current version and adds in the new version number.
-        """
-        if self.VERSION_KEY in results_json:
-            archive_version = results_json[self.VERSION_KEY]
-            if archive_version == self.VERSION:
-                return
-        else:
-            archive_version = 3
-
-        # version 3->4
-        if archive_version == 3:
-            num_results = len(results_json.values())
-            for builder, results in iteritems(results_json):
-                self._convert_tests_to_trie(results)
-
-        results_json[self.VERSION_KEY] = self.VERSION
-
-    def _convert_tests_to_trie(self, results):
-        if not self.TESTS in results:
-            return
-
-        test_results = results[self.TESTS]
-        test_results_trie = {}
-        for test in iterkeys(test_results):
-            single_test_result = test_results[test]
-            add_path_to_trie(test, single_test_result, test_results_trie)
-
-        results[self.TESTS] = test_results_trie
-
     def _populate_results_and_times_json(self, results_and_times):
         results_and_times[self.RESULTS] = []
         results_and_times[self.TIMES] = []
@@ -658,51 +470,3 @@
         results_for_builder = {}
         results_for_builder[self.TESTS] = {}
         return results_for_builder
-
-    def _remove_items_over_max_number_of_builds(self, encoded_list):
-        """Removes items from the run-length encoded list after the final
-        item that exceeds the max number of builds to track.
-
-        Args:
-          encoded_results: run-length encoded results. An array of arrays, e.g.
-              [[3,'A'],[1,'Q']] encodes AAAQ.
-        """
-        num_builds = 0
-        index = 0
-        for result in encoded_list:
-            num_builds = num_builds + result[0]
-            index = index + 1
-            if num_builds > self.MAX_NUMBER_OF_BUILD_RESULTS_TO_LOG:
-                return encoded_list[:index]
-        return encoded_list
-
-    def _normalize_results_json(self, test, test_name, tests):
-        """ Prune tests where all runs pass or tests that no longer exist and
-        truncate all results to maxNumberOfBuilds.
-
-        Args:
-          test: ResultsAndTimes object for this test.
-          test_name: Name of the test.
-          tests: The JSON object with all the test results for this builder.
-        """
-        test[self.RESULTS] = self._remove_items_over_max_number_of_builds(
-            test[self.RESULTS])
-        test[self.TIMES] = self._remove_items_over_max_number_of_builds(
-            test[self.TIMES])
-
-        is_all_pass = self._is_results_all_of_type(test[self.RESULTS],
-                                                   self.PASS_RESULT)
-        is_all_no_data = self._is_results_all_of_type(test[self.RESULTS],
-            self.NO_DATA_RESULT)
-        max_time = max([time[1] for time in test[self.TIMES]])
-
-        # Remove all passes/no-data from the results to reduce noise and
-        # filesize. If a test passes every run, but takes > MIN_TIME to run,
-        # don't throw away the data.
-        if is_all_no_data or (is_all_pass and max_time <= self.MIN_TIME):
-            del tests[test_name]
-
-    def _is_results_all_of_type(self, results, type):
-        """Returns whether all the results are of the given type
-        (e.g. all passes)."""
-        return len(results) == 1 and results[0][1] == type

Modified: trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py (273998 => 273999)


--- trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py	2021-03-05 21:09:42 UTC (rev 273998)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py	2021-03-05 21:11:19 UTC (rev 273999)
@@ -40,10 +40,6 @@
 
 class JSONGeneratorTest(unittest.TestCase):
     def setUp(self):
-        self.builder_name = 'DUMMY_BUILDER_NAME'
-        self.build_name = 'DUMMY_BUILD_NAME'
-        self.build_number = 'DUMMY_BUILDER_NUMBER'
-
         # For archived results.
         self._json = None
         self._num_runs = 0
@@ -91,8 +87,7 @@
         host = MockHost()
         port = Mock()
         port._filesystem = host.filesystem
-        generator = json_results_generator.JSONResultsGenerator(port,
-            self.builder_name, self.build_name, self.build_number, '', test_results_map)
+        generator = json_results_generator.JSONResultsGenerator(port, '', test_results_map)
 
         failed_count_map = dict([(t, 1) for t in failed_tests])
 
@@ -120,14 +115,9 @@
         # Aliasing to a short name for better access to its constants.
         JRG = json_results_generator.JSONResultsGenerator
 
-        self.assertIn(JRG.VERSION_KEY, json)
-        self.assertIn(self.builder_name, json)
-
-        buildinfo = json[self.builder_name]
+        buildinfo = json['results']
         self.assertIn(JRG.FIXABLE, buildinfo)
         self.assertIn(JRG.TESTS, buildinfo)
-        self.assertEqual(len(buildinfo[JRG.BUILD_NUMBERS]), num_runs)
-        self.assertEqual(buildinfo[JRG.BUILD_NUMBERS][0], self.build_number)
 
         if tests_set or DISABLED_count:
             fixable = {}

Modified: trunk/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py (273998 => 273999)


--- trunk/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py	2021-03-05 21:09:42 UTC (rev 273998)
+++ trunk/Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py	2021-03-05 21:11:19 UTC (rev 273999)
@@ -344,25 +344,6 @@
         optparse.make_option("--wptserver-doc-root", type="string", help=("Set web platform server document root, relative to LayoutTests directory")),
     ]))
 
-    # FIXME: Remove this group once the old results dashboards are deprecated.
-    option_group_definitions.append(("Legacy Result Options", [
-        optparse.make_option("--master-name", help="The name of the buildbot master."),
-        optparse.make_option("--build-name", default="DUMMY_BUILD_NAME",
-            help=("The name of the builder used in its path, e.g. webkit-rel.")),
-        optparse.make_option("--build-slave", default="DUMMY_BUILD_SLAVE",
-            help=("The name of the worker used. e.g. apple-macpro-6.")),
-        optparse.make_option("--test-results-server", action="" default=[],
-            help=("If specified, upload results json files to this appengine server.")),
-        optparse.make_option("--results-server-host", action="" default=[],
-            help=("If specified, upload results JSON file to this results server.")),
-        optparse.make_option("--additional-repository-name",
-            help=("The name of an additional subversion or git checkout")),
-        optparse.make_option("--additional-repository-path",
-            help=("The path to an additional subversion or git checkout (requires --additional-repository-name)")),
-        optparse.make_option("--allowed-host", type="string", action="" default=[],
-            help=("If specified, tests are allowed to make requests to the specified hostname."))
-    ]))
-
     option_group_definitions.append(('Upload Options', upload_options()))
 
     option_parser = optparse.OptionParser(usage="%prog [options] [<path>...]")
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to