Initialize Tizen 2.3
[framework/web/webkit-efl.git] / LayoutTests / inspector / timeline / timeline-time.html
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     WebInspector.showPanel("timeline");
10
11     var data = ["Version",
12         {"startTime":13,"data":{},"endTime":19,"type":"Program","children":[
13             {"startTime":14,"data":{"type":"click"},"endTime":18,"type":"EventDispatch","frameId":"2","children":[
14                 {"startTime":15,"data":{"scriptName":"foo.html","scriptLine":7},"endTime":17,"type":"FunctionCall","frameId":"2","children":[
15                     {"startTime":16,"data":{"message":"hello"},"type":"Time","frameId":"2"}
16                 ]}
17             ]}
18         ]},
19         {"startTime":25,"data":{},"endTime":35,"type":"Program","children":[
20             {"startTime":26,"data":{"type":"click"},"endTime":34,"type":"EventDispatch","frameId":"2","children":[
21                 {"startTime":27,"data":{"scriptName":"foo.html","scriptLine":15},"endTime":33,"type":"FunctionCall","frameId":"2","children":[
22                     {"startTime":28,"data":{"message":"boom"},"type":"Time","frameId":"2"},
23                     {"startTime":29,"data":{},"type":"ScheduleStyleRecalculation","frameId":"2"},
24                     {"startTime":30,"data":{},"children":[],"endTime":31,"type":"RecalculateStyles","frameId":"2"},
25                     {"startTime":32,"data":{"message":"boom"},"type":"TimeEnd","frameId":"2"}
26                 ]}
27             ]}
28         ]},
29         {"startTime":41,"data":{},"endTime":47,"type":"Program","children":[
30             {"startTime":42,"data":{"type":"click"},"endTime":46,"type":"EventDispatch","frameId":"2","children":[
31                 {"startTime":43,"data":{"scriptName":"foo.html","scriptLine":11},"endTime":45,"type":"FunctionCall","frameId":"2","children":[
32                     {"startTime":44,"data":{"message":"hello"},"type":"TimeEnd","frameId":"2"}
33                 ]}
34             ]}
35         ]}
36     ];
37
38     var input = JSON.stringify(data);
39     var model = WebInspector.panels.timeline._model;
40     var presentationModel = WebInspector.panels.timeline._presentationModel;
41     presentationModel.setGlueRecords(true);
42
43     function createFileReader(file, delegate)
44     {
45         return new InspectorTest.FakeFileReader(input, delegate, onDataLoaded);
46     }
47
48     function onDataLoaded()
49     {
50         var root = presentationModel.rootRecord();
51         InspectorTest.assertEquals(4, root.children.length);
52
53         var time1 = root.children[1];
54         InspectorTest.assertEquals("Time", time1.type);
55         InspectorTest.assertEquals(2, time1.children.length);
56         var timeEnd1 = time1.children[1];
57         InspectorTest.assertEquals("TimeEnd", timeEnd1.type);
58         InspectorTest.assertEquals(time1, timeEnd1.timeRecord);
59         InspectorTest.assertEquals(timeEnd1, time1.timeEndRecord);
60
61         var time2 = time1.children[0];
62         InspectorTest.assertEquals("Time", time2.type);
63         InspectorTest.assertEquals(1, time2.children.length);
64         var timeEnd2 = time2.children[0];
65         InspectorTest.assertEquals("TimeEnd", timeEnd2.type);
66         InspectorTest.assertEquals(time2, timeEnd2.timeRecord);
67         InspectorTest.assertEquals(timeEnd2, time2.timeEndRecord);
68
69         InspectorTest.completeTest();
70     }
71
72     InspectorTest.override(model, "_createFileReader", createFileReader);
73     model.loadFromFile({}, new WebInspector.Progress());
74 }
75
76 </script>
77 </head>
78
79 <body onload="runTest()">
80 <p>
81 Test time/timeEnd nesting <a href="https://bugs.webkit.org/show_bug.cgi?id=100936">(Bug 100936)</a>
82 </p>
83
84 </body>
85 </html>