| OLD | NEW |
| (Empty) |
| 1 <html> | |
| 2 <head> | |
| 3 <script src="../../http/tests/inspector/inspector-test.js"></script> | |
| 4 <script src="../../http/tests/inspector/timeline-test.js"></script> | |
| 5 <script> | |
| 6 | |
| 7 function test() | |
| 8 { | |
| 9 function runTestWithDataAndCheck(input, expectedOutput) | |
| 10 { | |
| 11 var model = new WebInspector.TimelineModelImpl(WebInspector.timelineMana
ger); | |
| 12 | |
| 13 function createFileReader(file, delegate) | |
| 14 { | |
| 15 return new InspectorTest.FakeFileReader(input, delegate, model.saveT
oFile.bind(model)); | |
| 16 } | |
| 17 | |
| 18 function createFileWriter() | |
| 19 { | |
| 20 return new InspectorTest.StringOutputStream(checkSaveData); | |
| 21 } | |
| 22 | |
| 23 function checkSaveData(output) | |
| 24 { | |
| 25 var saveData = JSON.parse(output); | |
| 26 saveData.shift(); // strip version info | |
| 27 expectedOutput.shift(); | |
| 28 InspectorTest.assertEquals(JSON.stringify(expectedOutput), JSON.stri
ngify(saveData), "saved data is not equal to restored"); | |
| 29 InspectorTest.addResult("passed"); | |
| 30 } | |
| 31 | |
| 32 InspectorTest.override(model, "_createFileReader", createFileReader); | |
| 33 InspectorTest.override(model, "_createFileWriter", createFileWriter); | |
| 34 | |
| 35 model.loadFromFile({}, new WebInspector.Progress()); | |
| 36 } | |
| 37 | |
| 38 InspectorTest.runTestSuite([ | |
| 39 function testNormal(next) | |
| 40 { | |
| 41 var data = ["Version", | |
| 42 {"startTime":1310749854316.8408,"data":{"requestId":43,"url":"ht
tp://www.webkit.org/","requestMethod":"GET"},"type":"ResourceSendRequest"}, | |
| 43 {"startTime":1310749855118.9329,"data":{"requestId":43,"statusCo
de":200,"mimeType":"text/html"},"children":[],"endTime":1310749855118.968,"type"
:"ResourceReceiveResponse"}, | |
| 44 {"startTime":1310749855136.245,"data":{"requestId":44,"url":"htt
p://www.webkit.org/css/main.css","requestMethod":"GET"},"type":"ResourceSendRequ
est"}, | |
| 45 {"startTime":1310749855136.655,"data":{"requestId":45,"url":"htt
p://www.webkit.org/css/green.css","requestMethod":"GET"},"type":"ResourceSendReq
uest"}, | |
| 46 {"startTime":1310749855137.023,"data":{"requestId":46,"url":"htt
p://www.webkit.org/css/blue.css","requestMethod":"GET"},"type":"ResourceSendRequ
est"}, | |
| 47 {"startTime":1310749855137.342,"data":{"requestId":47,"url":"htt
p://www.webkit.org/css/yellow.css","requestMethod":"GET"},"type":"ResourceSendRe
quest"}, | |
| 48 {"startTime":1310749855137.656,"data":{"requestId":48,"url":"htt
p://www.webkit.org/css/pink.css","requestMethod":"GET"},"type":"ResourceSendRequ
est"}, | |
| 49 {"startTime":1310749855137.989,"data":{"requestId":49,"url":"htt
p://www.webkit.org/css/purple.css","requestMethod":"GET"},"type":"ResourceSendRe
quest"}, | |
| 50 {"startTime":1310749855138.308,"data":{"requestId":50,"url":"htt
p://www.webkit.org/css/gray.css","requestMethod":"GET"},"type":"ResourceSendRequ
est"} | |
| 51 ]; | |
| 52 var input = JSON.stringify(data); | |
| 53 runTestWithDataAndCheck(input, data); | |
| 54 next(); | |
| 55 }, | |
| 56 | |
| 57 function testIncompatible(next) | |
| 58 { | |
| 59 var data = ["Version", | |
| 60 {"startTime":1310749854316.8408,"data":{"requestId":43,"url":"ht
tp://www.webkit.org/","requestMethod":"GET"},"t\"y}p}e\\":"UnknownRecordType"} | |
| 61 ]; | |
| 62 var input = JSON.stringify(data); | |
| 63 runTestWithDataAndCheck(input, data); | |
| 64 next(); | |
| 65 }, | |
| 66 | |
| 67 function testMalformed(next) | |
| 68 { | |
| 69 var data = ["Version"]; | |
| 70 // At least 1 record is parsed in first chunk. | |
| 71 var input = '["Version",' | |
| 72 +'{"startTime":1310749854316.8408,"data":{"requestId":43},"type"
:"UnknownRecordType"},' | |
| 73 +'{"startTime":1310749854316.8508,"data":{"requestId":43},"type"
:"UnknownRecordType"},' | |
| 74 +'{"startTime":1310749854316.8608,"data":{"requestId":43},"type"
:"UnknownRecordType"},' | |
| 75 +'{"startTime":1310749854316.8708,"data":{"requestId":43_MALFORM
ED_JSON_},"type":"UnknownRecordType"}]'; | |
| 76 runTestWithDataAndCheck(input, data); | |
| 77 next(); | |
| 78 } | |
| 79 ]); | |
| 80 } | |
| 81 | |
| 82 </script> | |
| 83 </head> | |
| 84 | |
| 85 <body onload="runTest()"> | |
| 86 <p> | |
| 87 Tests the Timeline save/load functionality. | |
| 88 </p> | |
| 89 | |
| 90 <p> | |
| 91 Also tests save/load of unknown (incompatible) record types. <a href="https://bu
gs.webkit.org/show_bug.cgi?id=91714">(Bug 91714)</a> | |
| 92 </p> | |
| 93 | |
| 94 </body> | |
| 95 </html> | |
| OLD | NEW |