12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- #!/usr/bin/env vpython3
- # Copyright 2021 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
- """Runs //tools/metrics/metrics_python_tests.py as a 'script' test."""
- import json
- import os
- import sys
- # Add src/testing/ into sys.path for importing common without pylint errors.
- sys.path.append(
- os.path.abspath(os.path.join(os.path.dirname(__file__), os.path.pardir)))
- from scripts import common
- def main_run(args):
- with common.temporary_file() as tempfile_path:
- rc = common.run_command(['vpython3',
- os.path.join(common.SRC_DIR, 'testing', 'test_env.py'),
- os.path.join(common.SRC_DIR, 'tools', 'metrics',
- 'metrics_python_tests.py'),
- '--isolated-script-test-output', tempfile_path,
- '--skip-set-lpac-acls=1',
- ], cwd=os.path.join(common.SRC_DIR, 'out', args.build_config_fs))
- with open(tempfile_path) as f:
- isolated_results = json.load(f)
- results = common.parse_common_test_results(isolated_results,
- test_separator='.')
- failures = [
- '%s: %s' % (k, v) for k, v in results['unexpected_failures'].items()
- ]
- common.record_local_script_results(
- 'metrics_python_tests', args.output, failures, True)
- return rc
- def main_compile_targets(args):
- json.dump([], args.output)
- if __name__ == '__main__':
- funcs = {
- 'run': main_run,
- 'compile_targets': main_compile_targets,
- }
- sys.exit(common.run_script(sys.argv[1:], funcs))
|