OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 import page_sets | 5 import page_sets |
6 from telemetry import test | 6 from telemetry import benchmark |
7 from telemetry.page import page_measurement | 7 from telemetry.page import page_measurement |
8 | 8 |
9 | 9 |
10 class _ServiceWorkerMeasurement(page_measurement.PageMeasurement): | 10 class _ServiceWorkerMeasurement(page_measurement.PageMeasurement): |
11 def CustomizeBrowserOptions(self, options): | 11 def CustomizeBrowserOptions(self, options): |
12 options.AppendExtraBrowserArgs([ | 12 options.AppendExtraBrowserArgs([ |
13 '--enable-experimental-web-platform-features', | 13 '--enable-experimental-web-platform-features', |
14 '--enable-service-worker' | 14 '--enable-service-worker' |
15 ]) | 15 ]) |
16 | 16 |
17 def MeasurePage(self, _, tab, results): | 17 def MeasurePage(self, _, tab, results): |
18 tab.WaitForJavaScriptExpression('window.done', 40) | 18 tab.WaitForJavaScriptExpression('window.done', 40) |
19 json = tab.EvaluateJavaScript('window.results') | 19 json = tab.EvaluateJavaScript('window.results') |
20 for key, value in json.iteritems(): | 20 for key, value in json.iteritems(): |
21 results.Add(key, value['units'], value['value']) | 21 results.Add(key, value['units'], value['value']) |
22 | 22 |
23 | 23 |
24 class ServiceWorkerPerfTest(test.Test): | 24 class ServiceWorkerPerfTest(benchmark.Benchmark): |
25 test = _ServiceWorkerMeasurement | 25 test = _ServiceWorkerMeasurement |
26 page_set = page_sets.ServiceWorkerPageSet | 26 page_set = page_sets.ServiceWorkerPageSet |
OLD | NEW |