Index: build/android/test_runner.py |
diff --git a/build/android/test_runner.py b/build/android/test_runner.py |
index d2b9faddc17302206f3eb19f60ca1e6f16d6b8b5..e187439858be6ea2a601438f96202cd3267f33ea 100755 |
--- a/build/android/test_runner.py |
+++ b/build/android/test_runner.py |
@@ -39,6 +39,8 @@ from pylib.linker import setup as linker_setup |
from pylib.results import json_results |
from pylib.results import report_results |
+from py_utils import contextlib_ext |
+ |
_DEVIL_STATIC_CONFIG_FILE = os.path.abspath(os.path.join( |
host_paths.DIR_SOURCE_ROOT, 'build', 'android', 'devil_config.json')) |
@@ -745,20 +747,16 @@ def RunTestsInPlatformMode(args): |
all_iteration_results = [] |
@contextlib.contextmanager |
- def noop(): |
- yield |
- |
- json_writer = noop() |
- if args.json_results_file: |
- @contextlib.contextmanager |
- def write_json_file(): |
- try: |
- yield |
- finally: |
- json_results.GenerateJsonResultsFile( |
- all_raw_results, args.json_results_file) |
- |
- json_writer = write_json_file() |
+ def write_json_file(): |
+ try: |
+ yield |
+ finally: |
+ json_results.GenerateJsonResultsFile( |
+ all_raw_results, args.json_results_file) |
+ |
+ json_writer = contextlib_ext.Optional( |
+ write_json_file(), |
+ args.json_results_file) |
### Set up test objects. |