diff options
author | aiolos <aiolos@chromium.org> | 2015-10-08 09:01:21 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-10-08 16:02:07 +0000 |
commit | 7daa4777aa977c35712e5f7515e9d3a200bf8f06 (patch) | |
tree | 8d6f685a10aad4f2714afffaf9f63a190c952eb0 /tools/perf/core | |
parent | a14c36d62577120c12b1fc983b5e8da1315fa0f0 (diff) | |
download | chromium_src-7daa4777aa977c35712e5f7515e9d3a200bf8f06.zip chromium_src-7daa4777aa977c35712e5f7515e9d3a200bf8f06.tar.gz chromium_src-7daa4777aa977c35712e5f7515e9d3a200bf8f06.tar.bz2 |
Create ChromiumConfig subclass of ProjectConfig.
BUG=540056
Review URL: https://codereview.chromium.org/1391883003
Cr-Commit-Position: refs/heads/master@{#353068}
Diffstat (limited to 'tools/perf/core')
-rw-r--r-- | tools/perf/core/chromium_config.py | 38 | ||||
-rw-r--r-- | tools/perf/core/path_util.py | 19 | ||||
-rw-r--r-- | tools/perf/core/project_config.py | 25 |
3 files changed, 52 insertions, 30 deletions
diff --git a/tools/perf/core/chromium_config.py b/tools/perf/core/chromium_config.py new file mode 100644 index 0000000..f7848c3 --- /dev/null +++ b/tools/perf/core/chromium_config.py @@ -0,0 +1,38 @@ +# Copyright (c) 2015 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. + +import logging +import os +import sys + +from core import path_util + +sys.path.append(path_util.GetTelemetryDir()) +from telemetry import project_config + + +CLIENT_CONFIG_PATH = os.path.join( + path_util.GetPerfDir(), 'core', 'binary_dependencies.json') + + +class ChromiumConfig(project_config.ProjectConfig): + def __init__(self, top_level_dir=None, benchmark_dirs=None, + client_config=CLIENT_CONFIG_PATH, + chromium_src_dir=path_util.GetChromiumSrcDir()): + + if not benchmark_dirs: + benchmark_dirs = [path_util.GetPerfBenchmarksDir()] + logging.info('No benchmark directories specified. Defaulting to %s', + benchmark_dirs) + if not top_level_dir: + top_level_dir = path_util.GetPerfDir() + logging.info('No top level directory specified. Defaulting to %s', + top_level_dir) + + super(ChromiumConfig, self).__init__( + top_level_dir=top_level_dir, benchmark_dirs=benchmark_dirs, + client_config=client_config) + + self._chromium_src_dir = chromium_src_dir + diff --git a/tools/perf/core/path_util.py b/tools/perf/core/path_util.py index 3050c98..ee84e5c 100644 --- a/tools/perf/core/path_util.py +++ b/tools/perf/core/path_util.py @@ -6,9 +6,18 @@ import os def GetChromiumSrcDir(): - return os.path.abspath(os.path.join( - os.path.dirname(__file__), os.pardir, os.pardir, os.pardir)) + return os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname( + os.path.abspath(__file__))))) + +def GetTelemetryDir(): + return os.path.join(GetChromiumSrcDir(), 'tools', 'telemetry') + +def GetPerfDir(): + return os.path.join(GetChromiumSrcDir(), 'tools', 'perf') + +def GetPerfStorySetsDir(): + return os.path.join(GetPerfDir(), 'page_sets') + +def GetPerfBenchmarksDir(): + return os.path.join(GetPerfDir(), 'benchmarks') -def GetStorySetsDir(): - return os.path.abspath(os.path.join( - os.path.dirname(__file__), os.pardir , 'page_sets')) diff --git a/tools/perf/core/project_config.py b/tools/perf/core/project_config.py deleted file mode 100644 index c4bd4a3..0000000 --- a/tools/perf/core/project_config.py +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright (c) 2015 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. - -import os -import sys - - -THIS_DIR = os.path.dirname(os.path.abspath(__file__)) -TOP_LEVEL_DIR = os.path.dirname(THIS_DIR) -TELEMETRY_DIR = os.path.normpath(os.path.join( - TOP_LEVEL_DIR, os.pardir, 'telemetry')) - -sys.path.append(TELEMETRY_DIR) -from telemetry import benchmark_runner - -binary_dependencies_file = os.path.join(THIS_DIR, 'binary_dependencies.json') - -config = benchmark_runner.ProjectConfig( - top_level_dir=TOP_LEVEL_DIR, - benchmark_dirs=[os.path.join(TOP_LEVEL_DIR, 'benchmarks')], - client_config=binary_dependencies_file) - -config.telemetry_dir = TELEMETRY_DIR - |