Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(691)

Side by Side Diff: tools/telemetry/telemetry/multi_page_benchmark_unittest_base.py

Issue 12278015: [Telemetry] Reorganize everything. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Re-add shebangs. Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4 import os
5 import unittest
6
7 from telemetry import browser_finder
8 from telemetry import options_for_unittests
9 from telemetry import page_runner
10 from telemetry import page as page_module
11 from telemetry import page_benchmark_results
12 from telemetry import page_set
13
14 class MultiPageBenchmarkUnitTestBase(unittest.TestCase):
15 """unittest.TestCase-derived class to help in the construction of unit tests
16 for a benchmark."""
17
18 def CreatePageSetFromFileInUnittestDataDir(self, test_filename):
19 return self.CreatePageSet('file:///' + os.path.join('..', 'unittest_data',
20 test_filename))
21
22 def CreatePageSet(self, test_filename):
23 base_dir = os.path.dirname(__file__)
24 ps = page_set.PageSet(file_path=os.path.join(base_dir, 'foo.json'))
25 page = page_module.Page(test_filename, ps, base_dir=base_dir)
26 setattr(page, 'smoothness', {'action': 'scrolling_action'})
27 ps.pages.append(page)
28 return ps
29
30 def RunBenchmark(self, benchmark, ps, options=None):
31 """Runs a benchmark against a pageset, returning the rows its outputs."""
32 if options is None:
33 options = options_for_unittests.GetCopy()
34 assert options
35 temp_parser = options.CreateParser()
36 benchmark.AddCommandLineOptions(temp_parser)
37 defaults = temp_parser.get_default_values()
38 for k, v in defaults.__dict__.items():
39 if hasattr(options, k):
40 continue
41 setattr(options, k, v)
42
43 benchmark.CustomizeBrowserOptions(options)
44 possible_browser = browser_finder.FindBrowser(options)
45
46 results = page_benchmark_results.PageBenchmarkResults()
47 with page_runner.PageRunner(ps) as runner:
48 runner.Run(options, possible_browser, benchmark, results)
49 return results
OLDNEW
« no previous file with comments | « tools/telemetry/telemetry/multi_page_benchmark_unittest.py ('k') | tools/telemetry/telemetry/options_for_unittests.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698