1 # Copyright 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.
10 from .trace_test import *
12 class SingleThreadTest(TraceTest):
13 def test_one_func(self):
20 actual_diff.append(end-start) # Pass via array because of Python scoping
24 tids = res.findThreadIds()
25 self.assertEquals(1, len(tids))
26 events = res.findEventsOnThread(tids[0])
27 self.assertEquals(2, len(events))
28 self.assertEquals('B', events[0]["ph"])
29 self.assertEquals('E', events[1]["ph"])
30 measured_diff = events[1]["ts"] - events[0]["ts"]
31 actual_diff = 1000000 * actual_diff[0]
32 self.assertTrue(math.fabs(actual_diff - measured_diff) < 1000)
34 def test_redundant_flush(self):
43 events = res.findEventsOnThread(res.findThreadIds()[0])
44 self.assertEquals(2, len(events))
45 self.assertEquals('B', events[0]["ph"])
46 self.assertEquals('E', events[1]["ph"])
48 def test_nested_func(self):
61 self.assertEquals(1, len(res.findThreadIds()))
63 tids = res.findThreadIds()
64 self.assertEquals(1, len(tids))
65 events = res.findEventsOnThread(tids[0])
66 efmt = ["%s %s" % (e["ph"], e["name"]) for e in events]