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);
};
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)
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) {
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)
{
return undefined;
};
-InspectorTest.findPresentationRecord = function(type)
+InspectorTest.findFirstTimelineRecord = function(type)
{
var result;
function findByType(record)
result = record;
return true;
}
- WebInspector.inspectorView.panel("timeline")._model.forAllRecords(findByType);
+ InspectorTest.timelineModel().forAllRecords(findByType);
return result;
}