Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 from recipe_engine import recipe_api | 5 from recipe_engine import recipe_api |
| 6 | 6 |
| 7 GS_CHROMEDRIVER_DATA_BUCKET = 'chromedriver-data' | 7 GS_CHROMEDRIVER_DATA_BUCKET = 'chromedriver-data' |
| 8 GS_PREBUILTS_URL = GS_CHROMEDRIVER_DATA_BUCKET + '/prebuilts' | 8 GS_PREBUILTS_URL = GS_CHROMEDRIVER_DATA_BUCKET + '/prebuilts' |
| 9 GS_SERVER_LOGS_URL = GS_CHROMEDRIVER_DATA_BUCKET + '/server_logs' | 9 GS_SERVER_LOGS_URL = GS_CHROMEDRIVER_DATA_BUCKET + '/server_logs' |
| 10 | 10 |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 133 if self.m.platform.is_linux: | 133 if self.m.platform.is_linux: |
| 134 cmd = ['xvfb-run', '-a'] + cmd | 134 cmd = ['xvfb-run', '-a'] + cmd |
| 135 if android_package: | 135 if android_package: |
| 136 cmd.extend(['--android-package', android_package]) | 136 cmd.extend(['--android-package', android_package]) |
| 137 return cmd | 137 return cmd |
| 138 | 138 |
| 139 def run_python_tests(self, chromedriver, ref_chromedriver, chrome=None, | 139 def run_python_tests(self, chromedriver, ref_chromedriver, chrome=None, |
| 140 chrome_version_name=None, android_package=None, | 140 chrome_version_name=None, android_package=None, |
| 141 archive_server_log=True, **kwargs): | 141 archive_server_log=True, **kwargs): |
| 142 """Run the Chromedriver Python tests.""" | 142 """Run the Chromedriver Python tests.""" |
| 143 version_info = '' | 143 test_name = 'python_tests%s' % ( |
| 144 if chrome_version_name: | 144 ' %s' % chrome_version_name if chrome_version_name else '') |
| 145 version_info = '(%s)' % chrome_version_name | 145 build_number = self.m.properties['buildnumber'] |
| 146 with self.m.tempfile.temp_dir('server_log') as log_dir: | 146 |
| 147 server_log = log_dir.join('server_log') | 147 with self.m.step.nest(test_name): |
| 148 test_script_path = self.m.path['checkout'].join( | 148 try: |
| 149 'chrome', 'test', 'chromedriver', 'test', 'run_py_tests.py') | 149 server_log_dir = self.m.path.mkdtemp('server_log') |
|
the real yoland
2016/07/20 21:25:54
you can still use temp_dir context manager
mikecase (-- gone --)
2016/07/20 21:46:22
This was a good idea. Switched to use the temp_dir
| |
| 150 self.m.step('python_tests%s' % version_info, | 150 server_log = server_log_dir.join( |
| 151 self._generate_test_command( | 151 ('%s_%s' % (test_name, build_number)).replace(' ', '_')) |
| 152 test_script_path, chromedriver, server_log, | 152 |
| 153 ref_chromedriver=ref_chromedriver, | 153 test_script_path = self.m.path['checkout'].join( |
| 154 android_package=android_package), | 154 'chrome', 'test', 'chromedriver', 'test', 'run_py_tests.py') |
| 155 **kwargs) | 155 self.m.step('Run test %s' % test_name, |
| 156 if archive_server_log: | 156 self._generate_test_command( |
| 157 self.archive_server_log(server_log) | 157 test_script_path, chromedriver, server_log, |
| 158 ref_chromedriver=ref_chromedriver, | |
| 159 android_package=android_package), | |
| 160 **kwargs) | |
| 161 if archive_server_log: | |
| 162 self.archive_server_log(server_log) | |
| 163 finally: | |
| 164 self.m.shutil.rmtree(server_log_dir) | |
| 158 | 165 |
| 159 def run_java_tests(self, chromedriver, chrome=None, chrome_version_name=None, | 166 def run_java_tests(self, chromedriver, chrome=None, chrome_version_name=None, |
| 160 android_package=None, verbose=False, | 167 android_package=None, verbose=False, |
| 161 archive_server_log=True, **kwargs): | 168 archive_server_log=True, **kwargs): |
| 162 """Run the Chromedriver Java tests.""" | 169 """Run the Chromedriver Java tests.""" |
| 163 version_info = '' | 170 test_name = 'java_tests%s' % ( |
| 164 if chrome_version_name: | 171 ' %s' % chrome_version_name if chrome_version_name else '') |
| 165 version_info = '(%s)' % chrome_version_name | 172 build_number = self.m.properties['buildnumber'] |
| 166 with self.m.tempfile.temp_dir('server_log') as log_dir: | 173 |
| 167 server_log = log_dir.join('server_log') | 174 with self.m.step.nest(test_name): |
| 168 test_script_path = self.m.path['checkout'].join( | 175 try: |
| 169 'chrome', 'test', 'chromedriver', 'test', 'run_java_tests.py') | 176 server_log_dir = self.m.path.mkdtemp('server_log') |
| 170 self.m.step('java_tests%s' % version_info, | 177 server_log = server_log_dir.join( |
| 171 self._generate_test_command( | 178 ('%s_%s' % (test_name, build_number)).replace(' ', '_')) |
| 172 test_script_path, chromedriver, server_log, | 179 |
| 173 ref_chromedriver=None, android_package=android_package, | 180 test_script_path = self.m.path['checkout'].join( |
| 174 verbose=verbose), | 181 'chrome', 'test', 'chromedriver', 'test', 'run_java_tests.py') |
| 175 **kwargs) | 182 self.m.step('Run test %s' % test_name, |
| 176 if archive_server_log: | 183 self._generate_test_command( |
| 177 self.archive_server_log(server_log) | 184 test_script_path, chromedriver, server_log, |
| 185 ref_chromedriver=None, android_package=android_package, | |
| 186 verbose=verbose), | |
| 187 **kwargs) | |
| 188 if archive_server_log: | |
| 189 self.archive_server_log(server_log) | |
| 190 finally: | |
| 191 self.m.shutil.rmtree(server_log_dir) | |
| 178 | 192 |
| 179 def run_all_tests(self, android_packages=None, archive_server_logs=True): | 193 def run_all_tests(self, android_packages=None, archive_server_logs=True): |
| 180 """Run all Chromedriver tests.""" | 194 """Run all Chromedriver tests.""" |
| 181 server_name = 'chromedriver' | 195 server_name = 'chromedriver' |
| 182 chromedriver = self.m.chromium.output_dir.join(server_name) | 196 chromedriver = self.m.chromium.output_dir.join(server_name) |
| 183 | 197 |
| 184 platform_name = self.m.platform.name | 198 platform_name = self.m.platform.name |
| 185 if self.m.platform.is_linux and self.m.platform.bits == 64: | 199 if self.m.platform.is_linux and self.m.platform.bits == 64: |
| 186 platform_name = 'linux64' | 200 platform_name = 'linux64' |
| 187 ref_chromedriver = self.m.path['checkout'].join( | 201 ref_chromedriver = self.m.path['checkout'].join( |
| (...skipping 12 matching lines...) Expand all Loading... | |
| 200 chrome_version_name=package, | 214 chrome_version_name=package, |
| 201 android_package=package, | 215 android_package=package, |
| 202 env=test_env, | 216 env=test_env, |
| 203 archive_server_log=archive_server_logs) | 217 archive_server_log=archive_server_logs) |
| 204 self.run_java_tests(chromedriver, | 218 self.run_java_tests(chromedriver, |
| 205 chrome_version_name=package, | 219 chrome_version_name=package, |
| 206 android_package=package, | 220 android_package=package, |
| 207 verbose=True, | 221 verbose=True, |
| 208 env=test_env, | 222 env=test_env, |
| 209 archive_server_log=archive_server_logs) | 223 archive_server_log=archive_server_logs) |
| OLD | NEW |