Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / http / tests / inspector / timeline-test.js
index 163cd00..d6c5ccd 100644 (file)
@@ -40,52 +40,24 @@ InspectorTest.timelineModel = function()
 
 InspectorTest.startTimeline = function(callback)
 {
-    InspectorTest._timelineRecords = [];
-    WebInspector.inspectorView.panel("timeline").toggleTimelineButton.toggled = true;
-    WebInspector.inspectorView.panel("timeline")._model._collectionEnabled = true;
-    TimelineAgent.start(5, false, undefined, true, false, callback);
-    function addRecord(record)
-    {
-        InspectorTest._timelineRecords.push(record);
-        for (var i = 0; record.children && i < record.children.length; ++i)
-            addRecord(record.children[i]);
-    }
-    InspectorTest._addTimelineEvent = function(event)
-    {
-        addRecord(event.data);
-    }
-    WebInspector.timelineManager.addEventListener(WebInspector.TimelineManager.EventTypes.TimelineEventRecorded, InspectorTest._addTimelineEvent);
+    var panel = WebInspector.inspectorView.panel("timeline");
+    panel.toggleTimelineButton.toggled = true;
+    panel._model._collectionEnabled = true;
+    panel._userInitiatedRecording = true;
+    panel._model._currentTarget = WebInspector.targetManager.mainTarget();
+    TimelineAgent.start(5, true, undefined, true, false, callback);
 };
 
-
-InspectorTest.waitForRecordType = function(recordType, callback)
-{
-    WebInspector.timelineManager.addEventListener(WebInspector.TimelineManager.EventTypes.TimelineEventRecorded, addEvent);
-
-    function addEvent(event)
-    {
-        addRecord(event.data);
-    }
-    function addRecord(record)
-    {
-        if (record.type !== WebInspector.TimelineModel.RecordType[recordType]) {
-            for (var i = 0; record.children && i < record.children.length; ++i)
-                addRecord(record.children[i]);
-            return;
-        }
-        WebInspector.timelineManager.removeEventListener(WebInspector.TimelineManager.EventTypes.TimelineEventRecorded, addEvent);
-        callback(record);
-    }
-}
-
 InspectorTest.stopTimeline = function(callback)
 {
-    function didStop()
+    function didStop(error)
     {
-        WebInspector.timelineManager.removeEventListener(WebInspector.TimelineManager.EventTypes.TimelineEventRecorded, InspectorTest._addTimelineEvent);
-        WebInspector.inspectorView.panel("timeline").toggleTimelineButton.toggled = false;
-        WebInspector.inspectorView.panel("timeline")._model._collectionEnabled = false;
-        callback(InspectorTest._timelineRecords);
+        if (error)
+            testRunner.logToStderr("error: " + error);
+        var panel = WebInspector.inspectorView.panel("timeline");
+        panel.toggleTimelineButton.toggled = false;
+        panel._userInitiatedRecording = false;
+        callback();
     }
     TimelineAgent.stop(didStop);
 };
@@ -141,7 +113,7 @@ InspectorTest.performActionsAndPrint = function(actions, typeName, includeTimeSt
 
 InspectorTest.printTimelineRecords = function(typeName, formatter)
 {
-    InspectorTest.innerPrintTimelineRecords(InspectorTest._timelineRecords, typeName, formatter);
+    InspectorTest.timelineModel().forAllRecords(InspectorTest._printTimlineRecord.bind(InspectorTest, typeName, formatter));
 };
 
 InspectorTest.printTimelinePresentationRecords = function(typeName, formatter)
@@ -156,15 +128,19 @@ InspectorTest.printTimestampRecords = function(typeName, formatter)
 
 InspectorTest.innerPrintTimelineRecords = function(records, typeName, formatter)
 {
-    for (var i = 0; i < records.length; ++i) {
-        var recordTypeName = (typeof records[i].type === "string") ? records[i].type : records[i].type();
-        if (typeName && recordTypeName === WebInspector.TimelineModel.RecordType[typeName])
-            InspectorTest.printTimelineRecordProperties(records[i]);
-        if (formatter)
-            formatter(records[i]);
-    }
+    for (var i = 0; i < records.length; ++i)
+        InspectorTest._printTimlineRecord(typeName, formatter, records[i]);
 };
 
+InspectorTest._printTimlineRecord = function(typeName, formatter, record)
+{
+    if (typeName && record.type() === WebInspector.TimelineModel.RecordType[typeName])
+        InspectorTest.printTimelineRecordProperties(record);
+    if (formatter)
+        formatter(record);
+};
+
+
 InspectorTest.innerPrintTimelinePresentationRecords = function(records, typeName, formatter)
 {
     for (var i = 0; i < records.length; ++i) {
@@ -187,22 +163,39 @@ InspectorTest.dumpTimelineRecord = function(record, detailsCallback, level, filt
         prefix = "----" + prefix;
     if (level > 0)
         prefix = prefix + "> ";
-    if (record.type === WebInspector.TimelineModel.RecordType.TimeStamp
-        || record.type === WebInspector.TimelineModel.RecordType.ConsoleTime) {
-        suffix = " : " + record.data.message;
+    if (record.type() === WebInspector.TimelineModel.RecordType.TimeStamp
+        || record.type() === WebInspector.TimelineModel.RecordType.ConsoleTime) {
+        suffix = " : " + record.data().message;
     }
     if (detailsCallback)
         suffix += " " + detailsCallback(record);
-    InspectorTest.addResult(prefix + InspectorTest._timelineAgentTypeToString(record.type) + suffix);
+    InspectorTest.addResult(prefix + InspectorTest._timelineAgentTypeToString(record.type()) + suffix);
 
-    var numChildren = record.children ? record.children.length : 0;
+    var children = record.children();
+    var numChildren = children.length;
     for (var i = 0; i < numChildren; ++i) {
-        if (filterTypes && filterTypes.indexOf(record.children[i].type) == -1)
+        if (filterTypes && filterTypes.indexOf(children[i].type()) == -1)
             continue;
-        InspectorTest.dumpTimelineRecord(record.children[i], detailsCallback, level + 1, filterTypes);
+        InspectorTest.dumpTimelineRecord(children[i], detailsCallback, level + 1, filterTypes);
     }
 }
 
+InspectorTest.dumpTimelineModelRecord = function(record, level)
+{
+    if (typeof level !== "number")
+        level = 0;
+    var prefix = "";
+    for (var i = 0; i < level ; ++i)
+        prefix = "----" + prefix;
+    if (level > 0)
+        prefix = prefix + "> ";
+    InspectorTest.addResult(prefix + record.type());
+
+    var numChildren = record.children() ? record.children().length : 0;
+    for (var i = 0; i < numChildren; ++i)
+        InspectorTest.dumpTimelineModelRecord(record.children()[i], level + 1);
+}
+
 // Dump just the record name, indenting output on separate lines for subrecords
 InspectorTest.dumpPresentationRecord = function(presentationRecord, detailsCallback, level, filterTypes)
 {
@@ -259,7 +252,7 @@ InspectorTest._timelineAgentTypeToString = function(numericType)
     return undefined;
 };
 
-InspectorTest.findPresentationRecord = function(type)
+InspectorTest.findFirstTimelineRecord = function(type)
 {
     var result;
     function findByType(record)
@@ -269,7 +262,7 @@ InspectorTest.findPresentationRecord = function(type)
         result = record;
         return true;
     }
-    WebInspector.inspectorView.panel("timeline")._model.forAllRecords(findByType);
+    InspectorTest.timelineModel().forAllRecords(findByType);
     return result;
 }