| OLD | NEW |
| 1 # Copyright 2012 The Chromium Authors. All rights reserved. | 1 # Copyright 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 benchmark | 10 from telemetry import benchmark |
| 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 page_set | 13 from telemetry.page import page_set |
| 14 from telemetry.value import list_of_scalar_values |
| 15 from telemetry.value import scalar |
| 14 | 16 |
| 15 | 17 |
| 16 class _SpaceportMeasurement(page_measurement.PageMeasurement): | 18 class _SpaceportMeasurement(page_measurement.PageMeasurement): |
| 17 def __init__(self): | 19 def __init__(self): |
| 18 super(_SpaceportMeasurement, self).__init__() | 20 super(_SpaceportMeasurement, self).__init__() |
| 19 | 21 |
| 20 def CustomizeBrowserOptions(self, options): | 22 def CustomizeBrowserOptions(self, options): |
| 21 options.AppendExtraBrowserArgs('--disable-gpu-vsync') | 23 options.AppendExtraBrowserArgs('--disable-gpu-vsync') |
| 22 | 24 |
| 23 def MeasurePage(self, page, tab, results): | 25 def MeasurePage(self, page, tab, results): |
| (...skipping 18 matching lines...) Expand all Loading... |
| 42 'Object.keys(window.__results).length > %d' % num_results, 180) | 44 'Object.keys(window.__results).length > %d' % num_results, 180) |
| 43 num_results = tab.EvaluateJavaScript( | 45 num_results = tab.EvaluateJavaScript( |
| 44 'Object.keys(window.__results).length') | 46 'Object.keys(window.__results).length') |
| 45 logging.info('Completed test %d of %d' % | 47 logging.info('Completed test %d of %d' % |
| 46 (num_results, num_tests_in_spaceport)) | 48 (num_results, num_tests_in_spaceport)) |
| 47 | 49 |
| 48 result_dict = eval(tab.EvaluateJavaScript( | 50 result_dict = eval(tab.EvaluateJavaScript( |
| 49 'JSON.stringify(window.__results)')) | 51 'JSON.stringify(window.__results)')) |
| 50 for key in result_dict: | 52 for key in result_dict: |
| 51 chart, trace = key.split('.', 1) | 53 chart, trace = key.split('.', 1) |
| 52 results.Add(trace, 'objects (bigger is better)', float(result_dict[key]), | 54 results.AddValue(scalar.ScalarValue( |
| 53 chart_name=chart, data_type='unimportant') | 55 results.current_page, '%s.%s'% (chart, trace), |
| 54 results.Add('Score', 'objects (bigger is better)', | 56 'objects (bigger is better)', float(result_dict[key]), |
| 55 [float(x) for x in result_dict.values()]) | 57 important=False)) |
| 58 results.AddValue(list_of_scalar_values.ListOfScalarValues( |
| 59 results.current_page, 'Score', 'objects (bigger is better)', |
| 60 [float(x) for x in result_dict.values()])) |
| 56 | 61 |
| 57 | 62 |
| 58 # crbug.com/166703: This test frequently times out on Windows. | 63 # crbug.com/166703: This test frequently times out on Windows. |
| 59 @benchmark.Disabled('mac', 'win') | 64 @benchmark.Disabled('mac', 'win') |
| 60 class Spaceport(benchmark.Benchmark): | 65 class Spaceport(benchmark.Benchmark): |
| 61 """spaceport.io's PerfMarks benchmark.""" | 66 """spaceport.io's PerfMarks benchmark.""" |
| 62 test = _SpaceportMeasurement | 67 test = _SpaceportMeasurement |
| 63 | 68 |
| 64 def CreatePageSet(self, options): | 69 def CreatePageSet(self, options): |
| 65 spaceport_dir = os.path.join(util.GetChromiumSrcDir(), 'chrome', 'test', | 70 spaceport_dir = os.path.join(util.GetChromiumSrcDir(), 'chrome', 'test', |
| 66 'data', 'third_party', 'spaceport') | 71 'data', 'third_party', 'spaceport') |
| 67 ps = page_set.PageSet(file_path=spaceport_dir) | 72 ps = page_set.PageSet(file_path=spaceport_dir) |
| 68 ps.AddPageWithDefaultRunNavigate('file://index.html') | 73 ps.AddPageWithDefaultRunNavigate('file://index.html') |
| 69 return ps | 74 return ps |
| OLD | NEW |