Reland "Add wrapper to normalize flags."
This is a reland of 642a49d1eb20b8c5744e745de79ddb585e0f7472 The change has the same effect but is now implemented through mb, rather than specifying a 'script', so that Android's special handling is not skipped. Original change's description: > Add wrapper to normalize flags. > > Bug: None > Change-Id: I9d43602cc66198a29dbc0e7586d948ee76c5ec84 > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/145204 > Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org> > Reviewed-by: Oleh Prypin <oprypin@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#28532} Bug: webrtc:10616 Change-Id: I60ebd4891dbe8de18c653f8af88181ea966307de Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/145409 Commit-Queue: Oleh Prypin <oprypin@webrtc.org> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Cr-Commit-Position: refs/heads/master@{#28572}
This commit is contained in:

committed by
Commit Bot

parent
4c2c412d7e
commit
bd33ce2620
48
tools_webrtc/flags_compatibility.py
Normal file
48
tools_webrtc/flags_compatibility.py
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
# Copyright (c) 2019 The WebRTC project authors. All Rights Reserved.
|
||||||
|
#
|
||||||
|
# Use of this source code is governed by a BSD-style license
|
||||||
|
# that can be found in the LICENSE file in the root of the source
|
||||||
|
# tree. An additional intellectual property rights grant can be found
|
||||||
|
# in the file PATENTS. All contributing project authors may
|
||||||
|
# be found in the AUTHORS file in the root of the source tree.
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
import logging
|
||||||
|
import subprocess
|
||||||
|
import sys
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
parser = argparse.ArgumentParser()
|
||||||
|
parser.add_argument('--isolated-script-test-output')
|
||||||
|
parser.add_argument('--isolated-script-test-perf-output')
|
||||||
|
args, unrecognized_args = parser.parse_known_args()
|
||||||
|
|
||||||
|
test_command = _ForcePythonInterpreter(unrecognized_args)
|
||||||
|
if args.isolated_script_test_output:
|
||||||
|
test_command += ['--isolated_script_test_output',
|
||||||
|
args.isolated_script_test_output]
|
||||||
|
if args.isolated_script_test_perf_output:
|
||||||
|
test_command += ['--isolated_script_test_perf_output',
|
||||||
|
args.isolated_script_test_perf_output]
|
||||||
|
logging.info('Running %r', test_command)
|
||||||
|
|
||||||
|
return subprocess.call(test_command)
|
||||||
|
|
||||||
|
|
||||||
|
def _ForcePythonInterpreter(cmd):
|
||||||
|
"""Returns the fixed command line to call the right python executable."""
|
||||||
|
out = cmd[:]
|
||||||
|
if out[0] == 'python':
|
||||||
|
out[0] = sys.executable
|
||||||
|
elif out[0].endswith('.py'):
|
||||||
|
out.insert(0, sys.executable)
|
||||||
|
return out
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
# pylint: disable=W0101
|
||||||
|
logging.basicConfig(level=logging.INFO)
|
||||||
|
sys.exit(main())
|
@ -126,7 +126,6 @@
|
|||||||
},
|
},
|
||||||
"webrtc_perf_tests": {
|
"webrtc_perf_tests": {
|
||||||
"label": "//:webrtc_perf_tests",
|
"label": "//:webrtc_perf_tests",
|
||||||
"timeout": 3600, # 1 hour
|
|
||||||
"type": "raw",
|
"type": "raw",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -822,11 +822,15 @@ class MetaBuildWrapper(object):
|
|||||||
'../../testing/test_env.py',
|
'../../testing/test_env.py',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
if test_type == 'raw':
|
||||||
|
cmdline.append('../../tools_webrtc/flags_compatibility.py')
|
||||||
|
extra_files.append('../../tools_webrtc/flags_compatibility.py')
|
||||||
|
|
||||||
must_retry = False
|
must_retry = False
|
||||||
if test_type == 'script':
|
if test_type == 'script':
|
||||||
cmdline = ['../../' + self.ToSrcRelPath(isolate_map[target]['script'])]
|
cmdline += ['../../' + self.ToSrcRelPath(isolate_map[target]['script'])]
|
||||||
elif is_android:
|
elif is_android:
|
||||||
cmdline = ['../../build/android/test_wrapper/logdog_wrapper.py',
|
cmdline += ['../../build/android/test_wrapper/logdog_wrapper.py',
|
||||||
'--target', target,
|
'--target', target,
|
||||||
'--logdog-bin-cmd', '../../bin/logdog_butler',
|
'--logdog-bin-cmd', '../../bin/logdog_butler',
|
||||||
'--logcat-output-file', '${ISOLATED_OUTDIR}/logcats',
|
'--logcat-output-file', '${ISOLATED_OUTDIR}/logcats',
|
||||||
|
@ -453,9 +453,11 @@ class UnitTest(unittest.TestCase):
|
|||||||
self.assertEqual(files, [
|
self.assertEqual(files, [
|
||||||
'../../.vpython',
|
'../../.vpython',
|
||||||
'../../testing/test_env.py',
|
'../../testing/test_env.py',
|
||||||
|
'../../tools_webrtc/flags_compatibility.py',
|
||||||
'base_unittests',
|
'base_unittests',
|
||||||
])
|
])
|
||||||
self.assertEqual(command, [
|
self.assertEqual(command, [
|
||||||
|
'../../tools_webrtc/flags_compatibility.py',
|
||||||
'../../testing/test_env.py',
|
'../../testing/test_env.py',
|
||||||
'./base_unittests',
|
'./base_unittests',
|
||||||
'--asan=0',
|
'--asan=0',
|
||||||
|
Reference in New Issue
Block a user