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