OLD | NEW |
1 # Copyright (C) 2010 Google Inc. All rights reserved. | 1 # Copyright (C) 2010 Google Inc. All rights reserved. |
2 # | 2 # |
3 # Redistribution and use in source and binary forms, with or without | 3 # Redistribution and use in source and binary forms, with or without |
4 # modification, are permitted provided that the following conditions are | 4 # modification, are permitted provided that the following conditions are |
5 # met: | 5 # met: |
6 # | 6 # |
7 # * Redistributions of source code must retain the above copyright | 7 # * Redistributions of source code must retain the above copyright |
8 # notice, this list of conditions and the following disclaimer. | 8 # notice, this list of conditions and the following disclaimer. |
9 # * Redistributions in binary form must reproduce the above | 9 # * Redistributions in binary form must reproduce the above |
10 # copyright notice, this list of conditions and the following disclaimer | 10 # copyright notice, this list of conditions and the following disclaimer |
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
139 | 139 |
140 # FIXME: prettypatch.py knows this path, why is it copied here? | 140 # FIXME: prettypatch.py knows this path, why is it copied here? |
141 self._pretty_patch_path = self.path_from_webkit_base("Tools", "Scripts",
"webkitruby", "PrettyPatch", "prettify.rb") | 141 self._pretty_patch_path = self.path_from_webkit_base("Tools", "Scripts",
"webkitruby", "PrettyPatch", "prettify.rb") |
142 self._pretty_patch_available = None | 142 self._pretty_patch_available = None |
143 | 143 |
144 if not hasattr(options, 'configuration') or not options.configuration: | 144 if not hasattr(options, 'configuration') or not options.configuration: |
145 self.set_option_default('configuration', self.default_configuration(
)) | 145 self.set_option_default('configuration', self.default_configuration(
)) |
146 self._test_configuration = None | 146 self._test_configuration = None |
147 self._reftest_list = {} | 147 self._reftest_list = {} |
148 self._results_directory = None | 148 self._results_directory = None |
149 self._root_was_set = hasattr(options, 'root') and options.root | |
150 | 149 |
151 def buildbot_archives_baselines(self): | 150 def buildbot_archives_baselines(self): |
152 return True | 151 return True |
153 | 152 |
154 def additional_drt_flag(self): | 153 def additional_drt_flag(self): |
155 if self.driver_name() == self.CONTENT_SHELL_NAME: | 154 if self.driver_name() == self.CONTENT_SHELL_NAME: |
156 return ['--dump-render-tree'] | 155 return ['--dump-render-tree'] |
157 return [] | 156 return [] |
158 | 157 |
159 def supports_per_test_timeout(self): | 158 def supports_per_test_timeout(self): |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
230 def _compare_baseline(self): | 229 def _compare_baseline(self): |
231 factory = PortFactory(self.host) | 230 factory = PortFactory(self.host) |
232 target_port = self.get_option('compare_port') | 231 target_port = self.get_option('compare_port') |
233 if target_port: | 232 if target_port: |
234 return factory.get(target_port).default_baseline_search_path() | 233 return factory.get(target_port).default_baseline_search_path() |
235 return [] | 234 return [] |
236 | 235 |
237 def check_build(self, needs_http): | 236 def check_build(self, needs_http): |
238 """This routine is used to ensure that the build is up to date | 237 """This routine is used to ensure that the build is up to date |
239 and all the needed binaries are present.""" | 238 and all the needed binaries are present.""" |
240 # If we're using a pre-built copy of WebKit (--root), we assume it also
includes a build of DRT. | 239 if self.get_option('build'): |
241 if not self._root_was_set and self.get_option('build'): | |
242 return False | 240 return False |
243 if not self._check_driver(): | 241 if not self._check_driver(): |
244 return False | 242 return False |
245 if self.get_option('pixel_tests'): | 243 if self.get_option('pixel_tests'): |
246 if not self.check_image_diff(): | 244 if not self.check_image_diff(): |
247 return False | 245 return False |
248 if not self._check_port_build(): | 246 if not self._check_port_build(): |
249 return False | 247 return False |
250 return True | 248 return True |
251 | 249 |
(...skipping 948 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1200 config_file_from_env = os.environ.get('WEBKIT_HTTP_SERVER_CONF_PATH') | 1198 config_file_from_env = os.environ.get('WEBKIT_HTTP_SERVER_CONF_PATH') |
1201 if config_file_from_env: | 1199 if config_file_from_env: |
1202 if not self._filesystem.exists(config_file_from_env): | 1200 if not self._filesystem.exists(config_file_from_env): |
1203 raise IOError('%s was not found on the system' % config_file_fro
m_env) | 1201 raise IOError('%s was not found on the system' % config_file_fro
m_env) |
1204 return config_file_from_env | 1202 return config_file_from_env |
1205 | 1203 |
1206 config_file_name = self._apache_config_file_name_for_platform(sys.platfo
rm) | 1204 config_file_name = self._apache_config_file_name_for_platform(sys.platfo
rm) |
1207 return self._filesystem.join(self.layout_tests_dir(), 'http', 'conf', co
nfig_file_name) | 1205 return self._filesystem.join(self.layout_tests_dir(), 'http', 'conf', co
nfig_file_name) |
1208 | 1206 |
1209 def _build_path(self, *comps): | 1207 def _build_path(self, *comps): |
1210 root_directory = self.get_option('root') | 1208 build_directory = self.get_option('build_directory') |
1211 if not root_directory: | 1209 if build_directory: |
1212 build_directory = self.get_option('build_directory') | 1210 root_directory = self._filesystem.join(build_directory, self.get_opt
ion('configuration')) |
1213 if build_directory: | 1211 else: |
1214 root_directory = self._filesystem.join(build_directory, self.get
_option('configuration')) | 1212 root_directory = self._config.build_directory(self.get_option('confi
guration')) |
1215 else: | |
1216 root_directory = self._config.build_directory(self.get_option('c
onfiguration')) | |
1217 # Set --root so that we can pass this to subprocesses and avoid maki
ng the | |
1218 # slow call to config.build_directory() N times in each worker. | |
1219 # FIXME: This is like @memoized, but more annoying and fragile; ther
e should be another | |
1220 # way to propagate values without mutating the options list. | |
1221 self.set_option_default('root', root_directory) | |
1222 return self._filesystem.join(self._filesystem.abspath(root_directory), *
comps) | 1213 return self._filesystem.join(self._filesystem.abspath(root_directory), *
comps) |
1223 | 1214 |
1224 def _path_to_driver(self, configuration=None): | 1215 def _path_to_driver(self, configuration=None): |
1225 """Returns the full path to the test driver (DumpRenderTree).""" | 1216 """Returns the full path to the test driver (DumpRenderTree).""" |
1226 return self._build_path(self.driver_name()) | 1217 return self._build_path(self.driver_name()) |
1227 | 1218 |
1228 def _path_to_webcore_library(self): | 1219 def _path_to_webcore_library(self): |
1229 """Returns the full path to a built copy of WebCore.""" | 1220 """Returns the full path to a built copy of WebCore.""" |
1230 return None | 1221 return None |
1231 | 1222 |
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1403 | 1394 |
1404 class VirtualTestSuite(object): | 1395 class VirtualTestSuite(object): |
1405 def __init__(self, name, base, args, tests=None): | 1396 def __init__(self, name, base, args, tests=None): |
1406 self.name = name | 1397 self.name = name |
1407 self.base = base | 1398 self.base = base |
1408 self.args = args | 1399 self.args = args |
1409 self.tests = tests or set() | 1400 self.tests = tests or set() |
1410 | 1401 |
1411 def __repr__(self): | 1402 def __repr__(self): |
1412 return "VirtualTestSuite('%s', '%s', %s)" % (self.name, self.base, self.
args) | 1403 return "VirtualTestSuite('%s', '%s', %s)" % (self.name, self.base, self.
args) |
OLD | NEW |