| # 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. |
| |
| from profile_chrome import agents_unittest |
| from profile_chrome import atrace_tracing_agent |
| from systrace import decorators |
| |
| |
| class AtraceAgentTest(agents_unittest.BaseAgentTest): |
| @decorators.ClientOnlyTest |
| def testGetCategories(self): |
| categories = \ |
| atrace_tracing_agent.AtraceAgent.GetCategories(self.device) |
| self.assertTrue(categories) |
| assert 'gfx' in ' '.join(categories) |
| |
| # TODO(washingtonp): This test throws an error on the Trybot servers when |
| # running profile_chrome's atrace agent. Once systrace uses profile_chrome's |
| # agent instead, this test may not longer need to be disabled. |
| @decorators.Disabled |
| def testTracing(self): |
| categories = 'gfx,input,view' |
| ring_buffer = False |
| agent = atrace_tracing_agent.AtraceAgent(self.device, |
| ring_buffer) |
| |
| try: |
| agent.StartAgentTracing(atrace_tracing_agent.AtraceConfig(categories, |
| self.device, ring_buffer)) |
| finally: |
| agent.StopAgentTracing() |
| result = agent.GetResults() |
| |
| self.assertFalse(agent.IsTracingOn()) |
| self.assertTrue('CPU#' in result.raw_data) |