OLD | NEW |
| (Empty) |
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 | |
3 # found in the LICENSE file. | |
4 | |
5 import os | |
6 import json | |
7 | |
8 from chrome_profiler import controllers_unittest | |
9 from chrome_profiler import perf_controller | |
10 | |
11 | |
12 class PerfProfilerControllerTest(controllers_unittest.BaseControllerTest): | |
13 def testGetCategories(self): | |
14 if not perf_controller.PerfProfilerController.IsSupported(): | |
15 return | |
16 categories = \ | |
17 perf_controller.PerfProfilerController.GetCategories(self.device) | |
18 assert 'cycles' in ' '.join(categories) | |
19 | |
20 def testTracing(self): | |
21 if not perf_controller.PerfProfilerController.IsSupported(): | |
22 return | |
23 categories = ['cycles'] | |
24 controller = perf_controller.PerfProfilerController(self.device, | |
25 categories) | |
26 | |
27 interval = 1 | |
28 try: | |
29 controller.StartTracing(interval) | |
30 finally: | |
31 controller.StopTracing() | |
32 | |
33 result = controller.PullTrace() | |
34 try: | |
35 with open(result) as f: | |
36 json.loads(f.read()) | |
37 finally: | |
38 os.remove(result) | |
OLD | NEW |