Changeset 60690
- Timestamp:
- 06/04/10 11:19:04 (5 years ago)
- Location:
- trunk/WebKitTools
- Files:
-
- 5 edited
-
ChangeLog (modified) (1 diff)
-
Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py (modified) (1 diff)
-
Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py (modified) (8 diffs)
-
Scripts/webkitpy/layout_tests/port/base.py (modified) (1 diff)
-
Scripts/webkitpy/layout_tests/port/chromium.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebKitTools/ChangeLog
r60683 r60690 1 2010-06-03 Kinuko Yasuda <kinuko@chromium.org> 2 3 Reviewed by Shinichiro Hamaji. 4 5 Clean up chromium-specific code from json_results_generator.py. 6 https://bugs.webkit.org/show_bug.cgi?id=39665 7 8 * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py: 9 * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: 10 * Scripts/webkitpy/layout_tests/port/base.py: 11 * Scripts/webkitpy/layout_tests/port/chromium.py: 12 1 13 2010-06-04 Tony Gentilcore <tonyg@chromium.org> 2 14 -
trunk/WebKitTools/Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py
r57443 r60690 78 78 (path_to_name(test_tuple.filename), test_tuple.test_run_time) 79 79 for test_tuple in test_timings) 80 self._svn_repositories = port.test_repository_paths() 80 81 81 82 self._generate_json_output() -
trunk/WebKitTools/Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py
r58314 r60690 39 39 import xml.dom.minidom 40 40 41 from webkitpy.common.checkout import scm 42 from webkitpy.common.system.executive import ScriptError 41 43 from webkitpy.layout_tests.layout_package import test_expectations 42 44 import webkitpy.thirdparty.simplejson as simplejson … … 47 49 48 50 class JSONResultsGenerator(object): 51 """A JSON results generator for generic tests.""" 49 52 50 53 MAX_NUMBER_OF_BUILD_RESULTS_TO_LOG = 750 … … 61 64 TIMES = "times" 62 65 BUILD_NUMBERS = "buildNumbers" 63 WEBKIT_SVN = "webkitRevision"64 CHROME_SVN = "chromeRevision"65 66 TIME = "secondsSinceEpoch" 66 67 TESTS = "tests" … … 103 104 include skipped tests. 104 105 """ 105 self._port = port106 106 self._builder_name = builder_name 107 107 self._build_name = build_name … … 115 115 self._skipped_tests = skipped_tests 116 116 self._all_tests = all_tests 117 self._svn_repositories = port.test_repository_paths() 117 118 118 119 self._generate_json_output() … … 126 127 results_file.close() 127 128 128 # FIXME: Callers should use scm.py instead.129 129 def _get_svn_revision(self, in_directory): 130 130 """Returns the svn revision for the given directory. … … 133 133 in_directory: The directory where svn is to be run. 134 134 """ 135 if os.path.exists(os.path.join(in_directory, '.svn')): 136 # Note: Not thread safe: http://bugs.python.org/issue2320 137 output = subprocess.Popen(["svn", "info", "--xml"], 138 cwd=in_directory, 139 shell=(sys.platform == 'win32'), 140 stdout=subprocess.PIPE).communicate()[0] 141 try: 142 dom = xml.dom.minidom.parseString(output) 143 return dom.getElementsByTagName('entry')[0].getAttribute( 144 'revision') 145 except xml.parsers.expat.ExpatError: 146 return "" 147 return "" 135 136 try: 137 scm_system = scm.detect_scm_system(in_directory) 138 return scm_system.__class__.value_from_svn_info(in_directory, 139 'Revision') 140 except (AttributeError, ScriptError): 141 # We're not in a svn directory, that's ok. 142 return "" 148 143 149 144 def _get_archived_json_results(self): … … 313 308 self._build_number, self.BUILD_NUMBERS) 314 309 315 # These next two branches test to see which source repos we can 316 # pull revisions from. 317 if hasattr(self._port, 'path_from_webkit_base'): 318 path_to_webkit = self._port.path_from_webkit_base('WebCore') 310 # Include SVN revisions for the given repositories. 311 for (name, path) in self._svn_repositories: 319 312 self._insert_item_into_raw_list(results_for_builder, 320 self._get_svn_revision(path_to_webkit), 321 self.WEBKIT_SVN) 322 323 if hasattr(self._port, 'path_from_chromium_base'): 324 try: 325 path_to_chrome = self._port.path_from_chromium_base() 326 self._insert_item_into_raw_list(results_for_builder, 327 self._get_svn_revision(path_to_chrome), 328 self.CHROME_SVN) 329 except AssertionError: 330 # We're not in a Chromium checkout, that's ok. 331 pass 313 self._get_svn_revision(path), 314 name + 'Revision') 332 315 333 316 self._insert_item_into_raw_list(results_for_builder, -
trunk/WebKitTools/Scripts/webkitpy/layout_tests/port/base.py
r59666 r60690 538 538 raise NotImplementedError('Port.version') 539 539 540 def test_repository_paths(self): 541 """Returns a list of (repository_name, repository_path) tuples 542 of its depending code base. By default it returns a list that only 543 contains a ('webkit', <webkitRepossitoryPath>) tuple. 544 """ 545 return [('webkit', self.layout_tests_dir())] 546 547 540 548 _WDIFF_DEL = '##WDIFF_DEL##' 541 549 _WDIFF_ADD = '##WDIFF_ADD##' -
trunk/WebKitTools/Scripts/webkitpy/layout_tests/port/chromium.py
r60427 r60690 233 233 test_platform_name) 234 234 235 def test_repository_paths(self): 236 # Note: for JSON file's backward-compatibility we use 'chrome' rather 237 # than 'chromium' here. 238 repos = super(ChromiumPort, self).test_repository_paths() 239 repos.append(('chrome', self.path_from_chromium_base())) 240 return repos 241 235 242 # 236 243 # PROTECTED METHODS
Note: See TracChangeset
for help on using the changeset viewer.