X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fthird_party%2Ftrace-viewer%2Ftrace_viewer%2Ftracing%2Fimporter%2Ftrace_event_importer_test.js;h=451d2500304f5c807abe3ad785a654f4553840a1;hb=004985e17e624662a4c85c76a7654039dc83f028;hp=34bbd251e503da793a4f64184bb50ef810e43103;hpb=2f108dbacb161091e42a3479f4e171339b7e7623;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/third_party/trace-viewer/trace_viewer/tracing/importer/trace_event_importer_test.js b/src/third_party/trace-viewer/trace_viewer/tracing/importer/trace_event_importer_test.js index 34bbd25..451d250 100644 --- a/src/third_party/trace-viewer/trace_viewer/tracing/importer/trace_event_importer_test.js +++ b/src/third_party/trace-viewer/trace_viewer/tracing/importer/trace_event_importer_test.js @@ -48,7 +48,7 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertEquals(0, slice.subSlices.length); }); - test('basicSingleThreadNonnestedParsingWiththreadDuration', function() { + test('basicSingleThreadNonnestedParsingWithCpuDuration', function() { var events = [ {name: 'a', args: {}, pid: 52, ts: 520, cat: 'foo', tid: 53, ph: 'B', tts: 221}, // @suppress longLineCheck {name: 'a', args: {}, pid: 52, ts: 560, cat: 'foo', tid: 53, ph: 'E', tts: 259}, // @suppress longLineCheck @@ -71,7 +71,7 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertEquals('foo', slice.category); assertEquals(0, slice.start); assertAlmostEquals((560 - 520) / 1000, slice.duration); - assertAlmostEquals((259 - 221) / 1000, slice.threadDuration); + assertAlmostEquals((259 - 221) / 1000, slice.cpuDuration); assertEquals(0, slice.subSlices.length); slice = t.sliceGroup.slices[1]; @@ -79,7 +79,7 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertEquals('bar', slice.category); assertAlmostEquals((629 - 520) / 1000, slice.start); assertAlmostEquals((631 - 629) / 1000, slice.duration); - assertAlmostEquals((331 - 329) / 1000, slice.threadDuration); + assertAlmostEquals((331 - 329) / 1000, slice.cpuDuration); assertEquals(0, slice.subSlices.length); }); @@ -171,7 +171,7 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertEquals(0.001, sA.start); assertEquals(0.003, sA.duration); assertEquals(0.002, sA.selfTime); - assertEquals(0.001, sA.threadSelfTime); + assertEquals(0.001, sA.cpuSelfTime); assertEquals('b', sB.title); assertEquals('bar', sB.category); @@ -204,7 +204,7 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertEquals(0.001, sA.start); assertEquals(0.007, sA.duration); assertEquals(0.004, sA.selfTime); - assertEquals(0.005, sA.threadSelfTime); + assertEquals(0.005, sA.cpuSelfTime); assertEquals('b', sB.title); assertEquals('bar', sB.category); @@ -726,23 +726,23 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() ctr.addSeries(value1Series); ctr.addSeries(value2Series); - value1Series.addSample(0, 0); - value1Series.addSample(1, 1); - value1Series.addSample(2, 1); - value1Series.addSample(3, 2); - value1Series.addSample(4, 3); - value1Series.addSample(5, 1); - value1Series.addSample(6, 3); - value1Series.addSample(7, 3.1); - - value2Series.addSample(0, 0); - value2Series.addSample(1, 0); - value2Series.addSample(2, 1); - value2Series.addSample(3, 1.1); - value2Series.addSample(4, 0); - value2Series.addSample(5, 7); - value2Series.addSample(6, 0); - value2Series.addSample(7, 0.5); + value1Series.addCounterSample(0, 0); + value1Series.addCounterSample(1, 1); + value1Series.addCounterSample(2, 1); + value1Series.addCounterSample(3, 2); + value1Series.addCounterSample(4, 3); + value1Series.addCounterSample(5, 1); + value1Series.addCounterSample(6, 3); + value1Series.addCounterSample(7, 3.1); + + value2Series.addCounterSample(0, 0); + value2Series.addCounterSample(1, 0); + value2Series.addCounterSample(2, 1); + value2Series.addCounterSample(3, 1.1); + value2Series.addCounterSample(4, 0); + value2Series.addCounterSample(5, 7); + value2Series.addCounterSample(6, 0); + value2Series.addCounterSample(7, 0.5); ctr.updateBounds(); @@ -1151,9 +1151,9 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertEquals(0.0, t.samples_[0].start); assertEquals(0.0, t.samples_[1].start); assertApproxEquals(0.01, t.samples_[2].start); - assertEquals('a', t.samples_[0].title); - assertEquals('b', t.samples_[1].title); - assertEquals('c', t.samples_[2].title); + assertEquals('a', t.samples_[0].leafStackFrame.title); + assertEquals('b', t.samples_[1].leafStackFrame.title); + assertEquals('c', t.samples_[2].leafStackFrame.title); assertFalse(m.hasImportWarnings); }); @@ -1510,7 +1510,7 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertAlmostEquals(10 / 1000, slice.duration); }); - test('importCompleteEventWithThreadDuration', function() { + test('importCompleteEventWithCpuDuration', function() { var events = [ { name: 'a', args: {}, pid: 52, ts: 629, dur: 1, cat: 'baz', tid: 53, ph: 'X', tts: 12, tdur: 1 }, // @suppress longLineCheck { name: 'b', args: {}, pid: 52, ts: 730, dur: 20, cat: 'foo', tid: 53, ph: 'X', tts: 110, tdur: 16 }, // @suppress longLineCheck @@ -1533,8 +1533,8 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertEquals('baz', slice.category); assertAlmostEquals(0, slice.start); assertAlmostEquals(1 / 1000, slice.duration); - assertAlmostEquals(12 / 1000, slice.threadStart); - assertAlmostEquals(1 / 1000, slice.threadDuration); + assertAlmostEquals(12 / 1000, slice.cpuStart); + assertAlmostEquals(1 / 1000, slice.cpuDuration); assertEquals(0, slice.subSlices.length); slice = t.sliceGroup.slices[1]; @@ -1542,8 +1542,8 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertEquals('foo', slice.category); assertAlmostEquals((730 - 629) / 1000, slice.start); assertAlmostEquals(20 / 1000, slice.duration); - assertAlmostEquals(110 / 1000, slice.threadStart); - assertAlmostEquals(16 / 1000, slice.threadDuration); + assertAlmostEquals(110 / 1000, slice.cpuStart); + assertAlmostEquals(16 / 1000, slice.cpuDuration); assertEquals(1, slice.subSlices.length); slice = t.sliceGroup.slices[2]; @@ -1608,6 +1608,70 @@ tvcm.unittest.testSuite('tracing.importer.trace_event_importer_test', function() assertEquals(subSlices[i].args['seq'], i); }); + test('sampleDataSimple', function() { + var events = { + 'traceEvents': [], + 'stackFrames': { + '1': { + 'category': 'mod', + 'name': 'main' + }, + '2': { + 'category': 'mod', + 'name': 'a', + 'parent': 1 + }, + '3': { + 'category': 'mod', + 'name': 'a_sub', + 'parent': 2 + }, + '4': { + 'category': 'mod', + 'name': 'b', + 'parent': 1 + } + }, + 'samples': [ + { + 'cpu': 0, 'tid': 1, 'ts': 1000.0, + 'name': 'cycles:HG', 'sf': 3, 'weight': 1 + }, + { + 'cpu': 0, 'tid': 1, 'ts': 2000.0, + 'name': 'cycles:HG', 'sf': 2, 'weight': 1 + }, + { + 'cpu': 1, 'tid': 1, 'ts': 3000.0, + 'name': 'cycles:HG', 'sf': 3, 'weight': 1 + } + ] + }; + var m = new tracing.TraceModel(events, false); + assertNotUndefined(m.kernel.cpus[0]); + assertEquals(1, m.getAllThreads().length); + + assertEquals(4, tvcm.dictionaryKeys(m.stackFrames).length); + assertEquals(3, m.samples.length); + + var t1 = m.processes[1].threads[1]; + assertEquals(3, t1.samples.length); + + var c0 = m.kernel.cpus[0]; + var c1 = m.kernel.cpus[1]; + assertEquals(2, c0.samples.length); + assertEquals(1, c1.samples.length); + + assertEquals(c0, m.samples[0].cpu); + assertEquals(t1, m.samples[0].thread); + assertEquals('cycles:HG', m.samples[0].title); + assertEquals(1, m.samples[0].start); + assertArrayEquals( + ['main', 'a', 'a_sub'], + m.samples[0].stackTrace.map(function(x) { return x.title; })); + assertEquals(1, m.samples[0].weight); + }); + // TODO(nduca): one slice, two threads // TODO(nduca): one slice, two pids