| 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 collections | 5 import collections |
| 6 import page_sets | 6 import page_sets |
| 7 import re | 7 import re |
| 8 | 8 |
| 9 from core import perf_benchmark | 9 from core import perf_benchmark |
| 10 | 10 |
| 11 from telemetry.core import util | 11 from telemetry.core import util |
| 12 from telemetry.page import action_runner | |
| 13 from telemetry.page import page_test | 12 from telemetry.page import page_test |
| 14 from telemetry.timeline import async_slice as async_slice_module | 13 from telemetry.timeline import async_slice as async_slice_module |
| 15 from telemetry.timeline import slice as slice_module | 14 from telemetry.timeline import slice as slice_module |
| 16 from telemetry.value import scalar | 15 from telemetry.value import scalar |
| 17 | 16 |
| 18 from measurements import timeline_controller | 17 from measurements import timeline_controller |
| 19 from metrics import speedindex | 18 from metrics import speedindex |
| 20 | 19 |
| 21 | 20 |
| 22 class _ServiceWorkerTimelineMetric(object): | 21 class _ServiceWorkerTimelineMetric(object): |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 98 def DidRunPage(self, platform): | 97 def DidRunPage(self, platform): |
| 99 if platform.tracing_controller.is_tracing_running: | 98 if platform.tracing_controller.is_tracing_running: |
| 100 platform.tracing_controller.StopTracing() | 99 platform.tracing_controller.StopTracing() |
| 101 | 100 |
| 102 def WillNavigateToPage(self, page, tab): | 101 def WillNavigateToPage(self, page, tab): |
| 103 self._timeline_controller.SetUp(page, tab) | 102 self._timeline_controller.SetUp(page, tab) |
| 104 self._timeline_controller.Start(tab) | 103 self._timeline_controller.Start(tab) |
| 105 self._speed_index.Start(page, tab) | 104 self._speed_index.Start(page, tab) |
| 106 | 105 |
| 107 def ValidateAndMeasurePage(self, page, tab, results): | 106 def ValidateAndMeasurePage(self, page, tab, results): |
| 108 runner = action_runner.ActionRunner(tab) | |
| 109 # timeline_controller requires creation of at least a single interaction | 107 # timeline_controller requires creation of at least a single interaction |
| 110 # record. service_worker should be refactored to follow the | 108 # record. service_worker should be refactored to follow the |
| 111 # timeline_based_measurement or it should not re-use timeline_controller | 109 # timeline_based_measurement or it should not re-use timeline_controller |
| 112 # logic for start & stop tracing. | 110 # logic for start & stop tracing. |
| 113 with runner.CreateInteraction('_DummyInteraction'): | 111 with tab.action_runner.CreateInteraction('_DummyInteraction'): |
| 114 pass | 112 pass |
| 115 tab.WaitForDocumentReadyStateToBeComplete(40) | 113 tab.WaitForDocumentReadyStateToBeComplete(40) |
| 116 self._timeline_controller.Stop(tab, results) | 114 self._timeline_controller.Stop(tab, results) |
| 117 | 115 |
| 118 # Retrieve TRACE_EVENTs | 116 # Retrieve TRACE_EVENTs |
| 119 timeline_metric = _ServiceWorkerTimelineMetric() | 117 timeline_metric = _ServiceWorkerTimelineMetric() |
| 120 browser_process = self._timeline_controller.model.browser_process | 118 browser_process = self._timeline_controller.model.browser_process |
| 121 filter_text = '(RegisterServiceWorker|'\ | 119 filter_text = '(RegisterServiceWorker|'\ |
| 122 'UnregisterServiceWorker|'\ | 120 'UnregisterServiceWorker|'\ |
| 123 'ProcessAllocate|'\ | 121 'ProcessAllocate|'\ |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 185 page_set = page_sets.ServiceWorkerMicroBenchmarkPageSet | 183 page_set = page_sets.ServiceWorkerMicroBenchmarkPageSet |
| 186 | 184 |
| 187 @classmethod | 185 @classmethod |
| 188 def Name(cls): | 186 def Name(cls): |
| 189 return 'service_worker.service_worker_micro_benchmark' | 187 return 'service_worker.service_worker_micro_benchmark' |
| 190 | 188 |
| 191 @classmethod | 189 @classmethod |
| 192 def ShouldDisable(cls, possible_browser): # http://crbug.com/597656 | 190 def ShouldDisable(cls, possible_browser): # http://crbug.com/597656 |
| 193 return (possible_browser.browser_type == 'reference' and | 191 return (possible_browser.browser_type == 'reference' and |
| 194 possible_browser.platform.GetDeviceTypeName() == 'Nexus 5X') | 192 possible_browser.platform.GetDeviceTypeName() == 'Nexus 5X') |
| OLD | NEW |