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 tvcm.require('tracing.test_utils');
8 tvcm.require('tracing.selection');
9 tvcm.require('tracing.trace_model.event');
10 tvcm.require('tracing.timeline_viewport');
11 tvcm.require('tracing.tracks.drawing_container');
12 tvcm.require('system_stats.system_stats_instance_track');
13 tvcm.require('system_stats.system_stats_snapshot');
15 tvcm.unittest.testSuite('system_stats.system_stats_instance_track_test', function() { // @suppress longLineCheck
16 var SystemStatsInstanceTrack = system_stats.SystemStatsInstanceTrack;
17 var Viewport = tracing.TimelineViewport;
19 var createObjects = function() {
20 var objectInstance = new tracing.trace_model.ObjectInstance({});
23 var stats1 = new Object();
24 var stats2 = new Object();
26 stats1['committed_memory'] = 2000000;
27 stats2['committed_memory'] = 3000000;
29 stats1['meminfo'] = new Object();
30 stats1.meminfo['free'] = 10000;
31 stats2['meminfo'] = new Object();
32 stats2.meminfo['free'] = 20000;
34 snapshots.push(new system_stats.SystemStatsSnapshot(objectInstance,
36 snapshots.push(new system_stats.SystemStatsSnapshot(objectInstance,
39 objectInstance.snapshots = snapshots;
41 return objectInstance;
44 test('instantiate', function() {
45 var objectInstances = [];
46 objectInstances.push(createObjects());
48 var div = document.createElement('div');
49 this.addHTMLOutput(div);
51 var viewport = new Viewport(div);
52 var drawingContainer = new tracing.tracks.DrawingContainer(viewport);
53 div.appendChild(drawingContainer);
55 var track = SystemStatsInstanceTrack(viewport);
56 track.objectInstances = objectInstances;
57 drawingContainer.invalidate();
58 drawingContainer.appendChild(track);
60 track.heading = 'testBasic';
61 var dt = new tracing.TimelineDisplayTransform();
62 dt.xSetWorldBounds(0, 50, track.clientWidth);
63 track.viewport.setDisplayTransformImmediately(dt);