1 // Copyright (c) 2013 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.
7 base.require('tracing.test_utils');
8 base.require('tracing.trace_model');
9 base.require('tracing.trace_model.process');
11 base.unittest.testSuite('tracing.trace_model.process', function() {
12 test('getOrCreateCounter', function() {
13 var model = new tracing.TraceModel();
14 var process = new tracing.trace_model.Process(model, 7);
15 var ctrBar = process.getOrCreateCounter('foo', 'bar');
16 var ctrBar2 = process.getOrCreateCounter('foo', 'bar');
17 assertEquals(ctrBar2, ctrBar);
20 test('shiftTimestampsForward', function() {
21 var model = new tracing.TraceModel();
22 var process = new tracing.trace_model.Process(model, 7);
23 var ctr = process.getOrCreateCounter('foo', 'bar');
24 var thread = process.getOrCreateThread(1);
27 thread.shiftTimestampsForward = function(ts) {
31 ctr.shiftTimestampsForward = function(ts) {
35 process.shiftTimestampsForward(0.32);
36 assertEquals(2, shiftCount);
39 test('compareOnPID', function() {
40 var model = new tracing.TraceModel();
41 var p1 = new tracing.trace_model.Process(model, 1);
44 var model = new tracing.TraceModel();
45 var p2 = new tracing.trace_model.Process(model, 2);
48 assertTrue(p1.compareTo(p2) < 0);
51 test('compareOnSortIndex', function() {
52 var model = new tracing.TraceModel();
53 var p1 = new tracing.trace_model.Process(model, 1);
57 var p2 = new tracing.trace_model.Process(model, 2);
60 assertTrue(p1.compareTo(p2) > 0);
63 test('compareOnName', function() {
64 var model = new tracing.TraceModel();
65 var p1 = new tracing.trace_model.Process(model, 1);
68 var p2 = new tracing.trace_model.Process(model, 2);
71 assertTrue(p1.compareTo(p2) < 0);
74 test('compareOnLabels', function() {
75 var model = new tracing.TraceModel();
76 var p1 = new tracing.trace_model.Process(model, 1);
80 var p2 = new tracing.trace_model.Process(model, 2);
84 assertTrue(p1.compareTo(p2) < 0);