Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | |
| 2 # Use of this source code is governed by a BSD-style license that can be | |
| 3 # found in the LICENSE file. | |
| 4 | |
| 5 import unittest | |
| 6 import uuid | |
| 7 | |
| 8 import pyauto_tracing | |
| 9 import pyauto | |
| 10 | |
| 11 from timeline_model import TimelineModel | |
| 12 from tracing_js_executor import TracingJsExecutor | |
| 13 | |
| 14 class TracingTest(pyauto.PyUITest): | |
| 15 def setUp(self): | |
| 16 super(TracingTest, self).setUp() | |
| 17 self._trace_win = self.GetBrowserWindowCount() - 1 | |
| 18 old_tab = self.GetActiveTabIndex(self._trace_win) | |
| 19 self.AppendTab('chrome://tracing', self._trace_win) | |
| 20 self._trace_tab = self.GetActiveTabIndex(self._trace_win) | |
| 21 self.GetBrowserWindow(self._trace_win).ActivateTab(old_tab) | |
| 22 self._js_executor = TracingJsExecutor( | |
|
nduca
2012/07/20 07:13:13
I'm not clear we need an executor. Why not just pu
| |
| 23 js_host = self, | |
| 24 win_idx = self._trace_win, | |
| 25 tab_idx = self._trace_tab | |
| 26 ) | |
| 27 # TODO(nduca): I'm not happy with importing timeline_model_decorator.js | |
| 28 # here. I'd rather pull it in from within TimelineModelProxy. | |
| 29 # tracing_test.js depends on timeline_model_decorator.js however. | |
| 30 self._js_executor.ExecuteJavascriptFile("timeline_model_decorator.js") | |
| 31 self._js_executor.ExecuteJavascriptFile("tracing_test.js") | |
| 32 self._uuid = uuid.uuid4() | |
| 33 | |
| 34 def tearDown(self): | |
| 35 self.GetBrowserWindow(self._trace_win).GetTab(self._trace_tab).Close() | |
| 36 super(TracingTest, self).tearDown() | |
| 37 | |
| 38 def BeginTracing(self, system_tracing = True): | |
| 39 self._js_executor.ExecuteJavascript( | |
| 40 """ | |
| 41 window.domAutomationController.send( | |
| 42 window.pyautoRecordTrace(%s, '%s') | |
| 43 ); | |
| 44 """ % ( | |
| 45 "true" if system_tracing else "false", | |
| 46 str(self._uuid) | |
| 47 ) | |
| 48 ) | |
| 49 | |
| 50 def EndTracing(self): | |
| 51 uuid = self._js_executor.ExecuteJavascript( | |
|
nduca
2012/07/20 07:13:13
Let javascript come up with its own id, rather tha
| |
| 52 """tracingController.endTracing();""" | |
| 53 ) | |
| 54 return TimelineModel( | |
| 55 js_executor = self._js_executor, | |
| 56 uuid = uuid | |
| 57 ) | |
| OLD | NEW |