Index: chrome/test/chromedriver/run_all_tests.py |
diff --git a/chrome/test/chromedriver/run_all_tests.py b/chrome/test/chromedriver/run_all_tests.py |
index 50e3870fe78c478421e19f29915d865fd2d82031..5cbf7e489e2f26824eff394923b9499b02a975df 100755 |
--- a/chrome/test/chromedriver/run_all_tests.py |
+++ b/chrome/test/chromedriver/run_all_tests.py |
@@ -34,13 +34,19 @@ def _AddToolsToSystemPathForWindows(): |
os.environ['PATH'] = os.pathsep.join(paths) + os.pathsep + os.environ['PATH'] |
-def _GenerateTestCommand(script, chromedriver, chrome=None, |
- chrome_version=None, android_package=None): |
+def _GenerateTestCommand(script, |
+ chromedriver, |
+ ref_chromedriver=None, |
+ chrome=None, |
+ chrome_version=None, |
+ android_package=None): |
cmd = [ |
sys.executable, |
os.path.join(_THIS_DIR, script), |
'--chromedriver=' + chromedriver, |
] |
+ if ref_chromedriver: |
+ cmd.append('--reference-chromedriver=' + ref_chromedriver) |
if chrome: |
cmd.append('--chrome=' + chrome) |
if chrome_version: |
@@ -51,15 +57,20 @@ def _GenerateTestCommand(script, chromedriver, chrome=None, |
return cmd |
-def RunPythonTests(chromedriver, chrome=None, chrome_version=None, |
+def RunPythonTests(chromedriver, ref_chromedriver, |
+ chrome=None, chrome_version=None, |
chrome_version_name=None, android_package=None): |
version_info = '' |
if chrome_version_name: |
version_info = '(v%s)' % chrome_version_name |
util.MarkBuildStepStart('python_tests%s' % version_info) |
code = util.RunCommand( |
- _GenerateTestCommand('run_py_tests.py', chromedriver, chrome, |
- chrome_version, android_package)) |
+ _GenerateTestCommand('run_py_tests.py', |
+ chromedriver, |
+ ref_chromedriver=ref_chromedriver, |
+ chrome=chrome, |
+ chrome_version=chrome_version, |
+ android_package=android_package)) |
if code: |
util.MarkBuildStepError() |
return code |
@@ -72,8 +83,12 @@ def RunJavaTests(chromedriver, chrome=None, chrome_version=None, |
version_info = '(v%s)' % chrome_version_name |
util.MarkBuildStepStart('java_tests%s' % version_info) |
code = util.RunCommand( |
- _GenerateTestCommand('run_java_tests.py', chromedriver, chrome, |
- chrome_version, android_package)) |
+ _GenerateTestCommand('run_java_tests.py', |
+ chromedriver, |
+ ref_chromedriver=None, |
+ chrome=chrome, |
+ chrome_version=chrome_version, |
+ android_package=android_package)) |
if code: |
util.MarkBuildStepError() |
return code |
@@ -100,11 +115,11 @@ def main(): |
'Notice: this option only applies to desktop.') |
options, _ = parser.parse_args() |
- postfix = '' |
+ exe_postfix = '' |
if util.IsWindows(): |
- postfix = '.exe' |
- cpp_tests_name = 'chromedriver2_tests' + postfix |
- server_name = 'chromedriver2_server' + postfix |
+ exe_postfix = '.exe' |
+ cpp_tests_name = 'chromedriver2_tests' + exe_postfix |
+ server_name = 'chromedriver2_server' + exe_postfix |
required_build_outputs = [server_name] |
if not options.android_package: |
@@ -112,7 +127,12 @@ def main(): |
build_dir = chrome_paths.GetBuildDir(required_build_outputs) |
print 'Using build outputs from', build_dir |
- chromedriver_server = os.path.join(build_dir, server_name) |
+ chromedriver = os.path.join(build_dir, server_name) |
+ ref_chromedriver = os.path.join( |
+ chrome_paths.GetSrc(), |
+ 'chrome', 'test', 'chromedriver', 'third_party', 'java_tests', |
+ 'reference_builds', |
+ 'chromedriver_%s%s' % (util.GetPlatformName(), exe_postfix)) |
if util.IsLinux(): |
# Set LD_LIBRARY_PATH to enable successful loading of shared object files, |
@@ -124,9 +144,10 @@ def main(): |
if options.android_package: |
os.environ['PATH'] += os.pathsep + os.path.join(_THIS_DIR, 'chrome') |
- code1 = RunPythonTests(chromedriver_server, |
+ code1 = RunPythonTests(chromedriver, |
+ ref_chromedriver, |
android_package=options.android_package) |
- code2 = RunJavaTests(chromedriver_server, |
+ code2 = RunJavaTests(chromedriver, |
android_package=options.android_package) |
return code1 or code2 |
else: |
@@ -148,10 +169,12 @@ def main(): |
chrome_path = archive.DownloadChrome(version[1], |
util.MakeTempDir(), |
download_site) |
- code1 = RunPythonTests(chromedriver_server, chrome=chrome_path, |
+ code1 = RunPythonTests(chromedriver, |
+ ref_chromedriver, |
+ chrome=chrome_path, |
chrome_version=version[0], |
chrome_version_name=version_name) |
- code2 = RunJavaTests(chromedriver_server, chrome=chrome_path, |
+ code2 = RunJavaTests(chromedriver, chrome=chrome_path, |
chrome_version=version[0], |
chrome_version_name=version_name) |
code = code or code1 or code2 |