| Index: build/android/chrome_profiler/chrome_controller_unittest.py
|
| diff --git a/build/android/chrome_profiler/chrome_controller_unittest.py b/build/android/chrome_profiler/chrome_controller_unittest.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e8c282906357d7e50cf85bc4d965cbe3738decf4
|
| --- /dev/null
|
| +++ b/build/android/chrome_profiler/chrome_controller_unittest.py
|
| @@ -0,0 +1,46 @@
|
| +# Copyright 2014 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +import os
|
| +import json
|
| +
|
| +from chrome_profiler import chrome_controller
|
| +from chrome_profiler import controllers_unittest
|
| +
|
| +
|
| +class ChromeControllerTest(controllers_unittest.BaseControllerTest):
|
| + def testGetCategories(self):
|
| + # Not supported on stable yet.
|
| + # TODO(skyostil): Remove this once category queries roll into stable.
|
| + if self.browser == 'stable':
|
| + return
|
| +
|
| + categories = \
|
| + chrome_controller.ChromeTracingController.GetCategories(
|
| + self.device, self.package_info)
|
| +
|
| + self.assertEquals(len(categories), 2)
|
| + self.assertTrue(categories[0])
|
| + self.assertTrue(categories[1])
|
| +
|
| + def testTracing(self):
|
| + categories = '*'
|
| + ring_buffer = False
|
| + controller = chrome_controller.ChromeTracingController(self.device,
|
| + self.package_info,
|
| + categories,
|
| + ring_buffer)
|
| +
|
| + interval = 1
|
| + try:
|
| + controller.StartTracing(interval)
|
| + finally:
|
| + controller.StopTracing()
|
| +
|
| + result = controller.PullTrace()
|
| + try:
|
| + with open(result) as f:
|
| + json.loads(f.read())
|
| + finally:
|
| + os.remove(result)
|
|
|