diff --git a/tools-webrtc/gtest-parallel-wrapper.py b/tools-webrtc/gtest-parallel-wrapper.py index bfdef096d5..5009e20c9a 100755 --- a/tools-webrtc/gtest-parallel-wrapper.py +++ b/tools-webrtc/gtest-parallel-wrapper.py @@ -61,10 +61,15 @@ def main(): parser = argparse.ArgumentParser() parser.add_argument('--isolated-script-test-output', type=str, default=None) - # TODO(ehmaldonado): Implement this flag instead of just "eating" it. + # We don't need to implement this flag, and possibly can't, since it's + # intended for results of Telemetry tests. See + # https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+/HEAD/dashboard/docs/data-format.md parser.add_argument('--isolated-script-test-chartjson-output', type=str, default=None) + # TODO(ehmaldonado): Figure out a way to avoid duplicating the flags in + # gtest-parallel. + parser.add_argument('--gtest_color', type=str, default='auto') parser.add_argument('--output_dir', type=str, default=None) parser.add_argument('--timeout', type=int, default=None) @@ -89,6 +94,8 @@ def main(): gtest_total_shards, '--shard_index', gtest_shard_index, + '--gtest_color', + options.gtest_color, ] # --isolated-script-test-output is used to upload results to the flakiness @@ -122,14 +129,15 @@ def main(): exit_code = subprocess.call(command, env=test_env, cwd=os.getcwd()) - for test_status in 'passed', 'failed', 'interrupted': - logs_dir = os.path.join(options.output_dir, test_status) - if not os.path.isdir(logs_dir): - continue - logs = [os.path.join(logs_dir, log) for log in os.listdir(logs_dir)] - log_file = os.path.join(options.output_dir, '%s-tests.log' % test_status) - CatFiles(logs, log_file) - os.rmdir(logs_dir) + if options.output_dir: + for test_status in 'passed', 'failed', 'interrupted': + logs_dir = os.path.join(options.output_dir, test_status) + if not os.path.isdir(logs_dir): + continue + logs = [os.path.join(logs_dir, log) for log in os.listdir(logs_dir)] + log_file = os.path.join(options.output_dir, '%s-tests.log' % test_status) + CatFiles(logs, log_file) + os.rmdir(logs_dir) return exit_code diff --git a/tools-webrtc/mb/mb.py b/tools-webrtc/mb/mb.py index 7361e122ab..9d568ced12 100755 --- a/tools-webrtc/mb/mb.py +++ b/tools-webrtc/mb/mb.py @@ -1096,6 +1096,7 @@ class MetaBuildWrapper(object): output_dir = '${ISOLATED_OUTDIR}' + sep + 'test_logs' gtest_parallel_wrapper = [ '../../tools-webrtc/gtest-parallel-wrapper.py', + '--gtest_color=no', '--output_dir=%s' % output_dir, ] diff --git a/tools-webrtc/mb/mb_unittest.py b/tools-webrtc/mb/mb_unittest.py index 998133b767..26ca19031d 100755 --- a/tools-webrtc/mb/mb_unittest.py +++ b/tools-webrtc/mb/mb_unittest.py @@ -448,6 +448,7 @@ class UnitTest(unittest.TestCase): self.assertEqual(command, [ '../../testing/test_env.py', '../../tools-webrtc/gtest-parallel-wrapper.py', + '--gtest_color=no', '--output_dir=${ISOLATED_OUTDIR}/test_logs', './base_unittests', '--workers=1', @@ -493,6 +494,7 @@ class UnitTest(unittest.TestCase): self.assertEqual(command, [ '../../testing/xvfb.py', '../../tools-webrtc/gtest-parallel-wrapper.py', + '--gtest_color=no', '--output_dir=${ISOLATED_OUTDIR}/test_logs', './base_unittests', '--', @@ -538,6 +540,7 @@ class UnitTest(unittest.TestCase): self.assertEqual(command, [ '../../testing/test_env.py', '../../tools-webrtc/gtest-parallel-wrapper.py', + '--gtest_color=no', '--output_dir=${ISOLATED_OUTDIR}\\test_logs', r'.\unittests.exe', '--', @@ -579,6 +582,7 @@ class UnitTest(unittest.TestCase): self.assertEqual(command, [ '../../testing/test_env.py', '../../tools-webrtc/gtest-parallel-wrapper.py', + '--gtest_color=no', '--output_dir=${ISOLATED_OUTDIR}/test_logs', './base_unittests', '--',