Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(439)

Unified Diff: build/android/pylib/gtest/dispatch.py

Issue 18323020: Updates the test runner script exit codes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: build/android/pylib/gtest/dispatch.py
diff --git a/build/android/pylib/gtest/dispatch.py b/build/android/pylib/gtest/dispatch.py
index 3c11c00f3b3d358cd7c9bef326708e7989ca733a..defa5b215068c767fc13fc88df13d89a4da8a937 100644
--- a/build/android/pylib/gtest/dispatch.py
+++ b/build/android/pylib/gtest/dispatch.py
@@ -13,6 +13,7 @@ from pylib import android_commands
from pylib import cmd_helper
from pylib import constants
from pylib import ports
+from pylib.base import base_test_result
from pylib.base import shard
from pylib.utils import emulator
from pylib.utils import report_results
@@ -35,6 +36,9 @@ def _FullyQualifiedTestSuites(exe, option_test_suite, build_type):
Ex. ('content_unittests',
'/tmp/chrome/src/out/Debug/content_unittests_apk/'
'content_unittests-debug.apk')
+
+ Raises:
+ Exception: Test suite not found.
frankf 2013/07/03 21:26:37 Exception if test ...
gkanwar 2013/07/03 23:15:18 Done.
"""
def GetQualifiedSuite(suite):
if suite.is_suite_exe:
@@ -93,7 +97,8 @@ def GetAllEnabledTests(runner_factory, devices):
Returns:
List of all enabled tests.
- Raises Exception if all devices failed.
+ Raises:
+ Exception: All devices failed.
"""
for device in devices:
try:
@@ -118,7 +123,10 @@ def _RunATestSuite(options, suite_name):
suite_name: name of the test suite being run.
Returns:
- 0 if successful, number of failing tests otherwise.
+ base_test_result.TestRunResult object with the test results
+
+ Raises:
+ Exception: Device not attached, or failed to reset test server port.
"""
step_name = os.path.basename(options.test_suite).replace('-debug.apk', '')
attached_devices = []
@@ -183,7 +191,7 @@ def _RunATestSuite(options, suite_name):
for buildbot_emulator in buildbot_emulators:
buildbot_emulator.Shutdown()
- return len(test_results.GetNotPass())
+ return test_results
def _ListTestSuites():
@@ -203,7 +211,7 @@ def Dispatch(options):
options: options for running the tests.
Returns:
- 0 if successful, number of failing tests otherwise.
+ base_test_result.TestRunResults object with the results of running the tests
"""
if options.test_suite == 'help':
_ListTestSuites()
@@ -215,13 +223,14 @@ def Dispatch(options):
all_test_suites = _FullyQualifiedTestSuites(options.exe, options.test_suite,
options.build_type)
- failures = 0
+ results = base_test_result.TestRunResults()
for suite_name, suite_path in all_test_suites:
frankf 2013/07/03 21:26:37 Future TODO: I don't think it's common workflow to
# Give each test suite its own copy of options.
test_options = copy.deepcopy(options)
test_options.test_suite = suite_path
- failures += _RunATestSuite(test_options, suite_name)
+ results.AddTestRunResults(_RunATestSuite(test_options, suite_name))
if options.use_xvfb:
framebuffer.Stop()
- return failures
+
+ return results

Powered by Google App Engine
This is Rietveld 408576698