| OLD | NEW | 
|---|
| 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 # Use of this source code is governed by a BSD-style license that can be | 
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. | 
| 4 import os | 4 import os | 
| 5 import unittest | 5 import unittest | 
| 6 | 6 | 
| 7 from telemetry import browser_finder | 7 from telemetry.core import browser_finder | 
| 8 from telemetry import options_for_unittests | 8 from telemetry.page import page_runner | 
| 9 from telemetry import page_runner | 9 from telemetry.page import page as page_module | 
| 10 from telemetry import page as page_module | 10 from telemetry.page import page_benchmark_results | 
| 11 from telemetry import page_benchmark_results | 11 from telemetry.page import page_set | 
| 12 from telemetry import page_set | 12 from telemetry.test import options_for_unittests | 
| 13 | 13 | 
| 14 class MultiPageBenchmarkUnitTestBase(unittest.TestCase): | 14 class MultiPageBenchmarkUnitTestBase(unittest.TestCase): | 
| 15   """unittest.TestCase-derived class to help in the construction of unit tests | 15   """unittest.TestCase-derived class to help in the construction of unit tests | 
| 16   for a benchmark.""" | 16   for a benchmark.""" | 
| 17 | 17 | 
| 18   def CreatePageSetFromFileInUnittestDataDir(self, test_filename): | 18   def CreatePageSetFromFileInUnittestDataDir(self, test_filename): | 
| 19     return self.CreatePageSet('file:///' + os.path.join('..', 'unittest_data', | 19     return self.CreatePageSet('file:///' + os.path.join( | 
| 20         test_filename)) | 20         '..', '..', 'unittest_data', test_filename)) | 
| 21 | 21 | 
| 22   def CreatePageSet(self, test_filename): | 22   def CreatePageSet(self, test_filename): | 
| 23     base_dir = os.path.dirname(__file__) | 23     base_dir = os.path.dirname(__file__) | 
| 24     ps = page_set.PageSet(file_path=os.path.join(base_dir, 'foo.json')) | 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) | 25     page = page_module.Page(test_filename, ps, base_dir=base_dir) | 
| 26     setattr(page, 'smoothness', {'action': 'scrolling_action'}) | 26     setattr(page, 'smoothness', {'action': 'scrolling_action'}) | 
| 27     ps.pages.append(page) | 27     ps.pages.append(page) | 
| 28     return ps | 28     return ps | 
| 29 | 29 | 
| 30   def RunBenchmark(self, benchmark, ps, options=None): | 30   def RunBenchmark(self, benchmark, ps, options=None): | 
| 31     """Runs a benchmark against a pageset, returning the rows its outputs.""" | 31     """Runs a benchmark against a pageset, returning the rows its outputs.""" | 
| 32     if options is None: | 32     if options is None: | 
| 33       options = options_for_unittests.GetCopy() | 33       options = options_for_unittests.GetCopy() | 
| 34     assert options | 34     assert options | 
| 35     temp_parser = options.CreateParser() | 35     temp_parser = options.CreateParser() | 
| 36     benchmark.AddCommandLineOptions(temp_parser) | 36     benchmark.AddCommandLineOptions(temp_parser) | 
| 37     defaults = temp_parser.get_default_values() | 37     defaults = temp_parser.get_default_values() | 
| 38     for k, v in defaults.__dict__.items(): | 38     for k, v in defaults.__dict__.items(): | 
| 39       if hasattr(options, k): | 39       if hasattr(options, k): | 
| 40         continue | 40         continue | 
| 41       setattr(options, k, v) | 41       setattr(options, k, v) | 
| 42 | 42 | 
| 43     benchmark.CustomizeBrowserOptions(options) | 43     benchmark.CustomizeBrowserOptions(options) | 
| 44     possible_browser = browser_finder.FindBrowser(options) | 44     possible_browser = browser_finder.FindBrowser(options) | 
| 45 | 45 | 
| 46     results = page_benchmark_results.PageBenchmarkResults() | 46     results = page_benchmark_results.PageBenchmarkResults() | 
| 47     with page_runner.PageRunner(ps) as runner: | 47     with page_runner.PageRunner(ps) as runner: | 
| 48       runner.Run(options, possible_browser, benchmark, results) | 48       runner.Run(options, possible_browser, benchmark, results) | 
| 49     return results | 49     return results | 
| OLD | NEW | 
|---|