3 <script src="../../http/tests/inspector/inspector-test.js"></script>
4 <script src="../../http/tests/inspector/timeline-test.js"></script>
7 var scriptUrl = "timeline-network-resource.js";
9 function performActions()
11 var script = document.createElement("script");
12 script.src = scriptUrl;
13 document.body.appendChild(script);
19 var scriptUrl = "timeline-network-resource.js";
21 var model = WebInspector.panels.timeline._model;
22 var presentationModel = InspectorTest.timelinePresentationModel();
24 InspectorTest.startTimeline(step1);
28 InspectorTest.evaluateInPage("performActions()");
29 InspectorTest.addConsoleSniffer(step2);
34 InspectorTest.stopTimeline(step3);
39 var lastRecordStartTime;
40 function format(record)
42 if (record.type() === WebInspector.TimelineModel.RecordType.ResourceSendRequest)
43 printSend(record._record);
44 else if (record.type() === WebInspector.TimelineModel.RecordType.ResourceReceiveResponse)
45 printReceive(record._record);
46 else if (record.type() === WebInspector.TimelineModel.RecordType.ResourceFinish)
47 printFinish(record._record);
49 if (record.parent && record.parent.type() === WebInspector.TimelineModel.RecordType.Root) {
50 if (lastRecordStartTime)
51 InspectorTest.assertGreaterOrEqual(record.startTime(), lastRecordStartTime, "Top level records order violation");
52 lastRecordStartTime = record.startTime();
55 model.forAllRecords(format);
56 InspectorTest.completeTest();
59 function printRecord(record)
61 InspectorTest.addResult("");
62 InspectorTest.printTimelineRecordProperties(record);
65 function printSend(record)
68 requestId = record.data.requestId;
69 if (record.data.url === undefined)
70 InspectorTest.addResult("* No 'url' property in record");
71 else if (record.data.url.indexOf(scriptUrl) === -1)
72 InspectorTest.addResult("* Didn't find URL: " + scriptUrl);
75 function printReceive(record)
78 if (requestId !== record.data.requestId)
79 InspectorTest.addResult("Didn't find matching requestId: " + requestId);
80 if (record.data.statusCode !== 0)
81 InspectorTest.addResult("Response received status: " + record.data.statusCode);
84 function printFinish(record)
87 if (requestId !== record.data.requestId)
88 InspectorTest.addResult("Didn't find matching requestId: " + requestId);
89 if (record.data.didFail)
90 InspectorTest.addResult("Request failed.");
97 <body onload="runTest()">
99 Tests the Timeline API instrumentation of a network resource load