| #!/usr/bin/env vpython3 |
| # Copyright 2013 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import argparse |
| import os |
| import json |
| import sys |
| |
| from core import path_util |
| path_util.AddTelemetryToPath() |
| |
| from core import benchmark_finders |
| |
| |
| def main(): |
| parser = argparse.ArgumentParser( |
| description=('List all benchmarks defined in a benchmark file as a json ' |
| 'string.')) |
| parser.add_argument('benchmark_file_paths', type=str, nargs='+') |
| args = parser.parse_args() |
| benchmark_names = set() |
| for path in args.benchmark_file_paths: |
| assert os.path.isfile(path), '%s does not exist' % path |
| benchmark_names.update(benchmark_finders.GetBenchmarkNamesForFile( |
| path_util.GetPerfDir(), os.path.abspath(path))) |
| print json.dumps(list(benchmark_names)) |
| |
| |
| if __name__ == '__main__': |
| sys.exit(main()) |