| 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 | 4 |
| 5 """Runs spaceport.io's PerfMarks benchmark.""" | 5 """Runs spaceport.io's PerfMarks benchmark.""" |
| 6 | 6 |
| 7 import logging | 7 import logging |
| 8 import os | 8 import os |
| 9 | 9 |
| 10 from telemetry import test | 10 from telemetry import test |
| 11 from telemetry.core import util | 11 from telemetry.core import util |
| 12 from telemetry.page import page_measurement | 12 from telemetry.page import page_measurement |
| 13 from telemetry.page import result_data_type |
| 13 from telemetry.page import page_set | 14 from telemetry.page import page_set |
| 14 | 15 |
| 15 | 16 |
| 16 class SpaceportMeasurement(page_measurement.PageMeasurement): | 17 class SpaceportMeasurement(page_measurement.PageMeasurement): |
| 17 def CustomizeBrowserOptions(self, options): | 18 def CustomizeBrowserOptions(self, options): |
| 18 options.extra_browser_args.extend(['--disable-gpu-vsync']) | 19 options.extra_browser_args.extend(['--disable-gpu-vsync']) |
| 19 | 20 |
| 20 def MeasurePage(self, _, tab, results): | 21 def MeasurePage(self, _, tab, results): |
| 21 util.WaitFor(lambda: tab.EvaluateJavaScript( | 22 util.WaitFor(lambda: tab.EvaluateJavaScript( |
| 22 '!document.getElementById("start-performance-tests").disabled'), 60) | 23 '!document.getElementById("start-performance-tests").disabled'), 60) |
| (...skipping 19 matching lines...) Expand all Loading... |
| 42 logging.info('Completed measurement %d of %d' | 43 logging.info('Completed measurement %d of %d' |
| 43 % (num_tests_complete[0], | 44 % (num_tests_complete[0], |
| 44 num_tests_in_measurement)) | 45 num_tests_in_measurement)) |
| 45 return num_tests_complete[0] >= num_tests_in_measurement | 46 return num_tests_complete[0] >= num_tests_in_measurement |
| 46 util.WaitFor(_IsDone, 1200, poll_interval=5) | 47 util.WaitFor(_IsDone, 1200, poll_interval=5) |
| 47 | 48 |
| 48 result_dict = eval(tab.EvaluateJavaScript(js_get_results)) | 49 result_dict = eval(tab.EvaluateJavaScript(js_get_results)) |
| 49 for key in result_dict: | 50 for key in result_dict: |
| 50 chart, trace = key.split('.', 1) | 51 chart, trace = key.split('.', 1) |
| 51 results.Add(trace, 'objects (bigger is better)', float(result_dict[key]), | 52 results.Add(trace, 'objects (bigger is better)', float(result_dict[key]), |
| 52 chart_name=chart, data_type='unimportant') | 53 chart_name=chart, data_type=result_data_type.UNIMPORTANT) |
| 53 results.Add('Score', 'objects (bigger is better)', | 54 results.Add('Score', 'objects (bigger is better)', |
| 54 [float(x) for x in result_dict.values()]) | 55 [float(x) for x in result_dict.values()]) |
| 55 | 56 |
| 56 | 57 |
| 57 class Spaceport(test.Test): | 58 class Spaceport(test.Test): |
| 58 """spaceport.io's PerfMarks benchmark.""" | 59 """spaceport.io's PerfMarks benchmark.""" |
| 59 test = SpaceportMeasurement | 60 test = SpaceportMeasurement |
| 60 | 61 |
| 61 def CreatePageSet(self, options): | 62 def CreatePageSet(self, options): |
| 62 spaceport_dir = os.path.join(util.GetChromiumSrcDir(), 'chrome', 'test', | 63 spaceport_dir = os.path.join(util.GetChromiumSrcDir(), 'chrome', 'test', |
| 63 'data', 'third_party', 'spaceport') | 64 'data', 'third_party', 'spaceport') |
| 64 return page_set.PageSet.FromDict( | 65 return page_set.PageSet.FromDict( |
| 65 {'pages': [{'url': 'file:///index.html'}]}, | 66 {'pages': [{'url': 'file:///index.html'}]}, |
| 66 spaceport_dir) | 67 spaceport_dir) |
| OLD | NEW |