Upstream version 5.34.98.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / inspector / timeline / timeline-frame-controller.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 function initialize_timelineFrameController()
7 {
8
9 InspectorTest.dumpFrame = function(frame)
10 {
11     var fieldsToDump = ["cpuTime", "duration", "startTime", "endTime", "id", "mainThreadFrameId", "isBackground", "timeByCategory", "other", "scripting", "painting"];
12     function formatFields(object)
13     {
14         var result = {};
15         for (var key in object) {
16             if (fieldsToDump.indexOf(key) < 0)
17                 continue;
18             var value = object[key];
19             if (typeof value === "number")
20                 value = Number(value.toFixed(7));
21             else if (typeof value === "object" && value)
22                 value = formatFields(value);
23             result[key] = value;
24         }
25         return result;
26     }
27     InspectorTest.addObject(formatFields(frame));
28 }
29
30 }
31
32 function test()
33 {
34     var records = [
35         {"startTime": 999.990, "type":"BeginFrame", "thread":"implSide"},
36         {"startTime": 1000.000, "data":{},"endTime":1003.999, "type":"Program", "children":[
37             {"startTime":1000.001, "type":"BeginFrame", "data":{"id":"1"}},
38             {"startTime":1000.002, "endTime":1003.999, "type":"FunctionCall" }
39         ]},
40         {"startTime": 1005.000, "type":"ActivateLayerTree", "data":{"id":"1"},"thread":"implSide"},
41         {"startTime": 1015.990, "type":"BeginFrame", "thread":"implSide"},
42         {"startTime": 1016.000, "data":{}, "endTime":1019.999,"type":"Program", "children":[
43             {"startTime":1016.001, "type":"BeginFrame", "data":{"id":"2"}},
44             {"startTime":1016.002, "endTime":1019.999, "type":"FunctionCall" }
45         ]},
46         {"startTime": 1021.000, "type":"ActivateLayerTree", "data":{"id":"2"}, "thread":"implSide"},
47         {"startTime": 1031.990, "type":"BeginFrame", "thread":"implSide"},
48         {"startTime": 1032.990, "type":"Rasterize", "thread":"implSide", "endTime": 1035.990},
49         {"startTime": 1032.000, "data":{}, "endTime":1035.999, "type":"Program", "children":[
50             {"startTime":1032.001, "type":"BeginFrame", "data":{"id":"3"}},
51             {"startTime":1032.002, "endTime":1035.999, "type":"FunctionCall" }
52         ]},
53         {"startTime": 1041.000, "type":"ActivateLayerTree", "data":{"id":"3"}, "thread":"implSide"},
54         {"startTime": 1047.990, "type":"BeginFrame", "thread":"implSide"},
55         {"startTime": 1048.000, "data":{}, "endTime":1091.999, "type":"Program", "children":[
56             {"startTime":1048.001, "type":"BeginFrame", "data":{"id":"4"}},
57             {"startTime":1048.002, "endTime":1091.999, "type":"FunctionCall" }
58         ]},
59         {"startTime": 1092.000, "type":"ActivateLayerTree", "data":{"id":"4"}, "thread":"implSide"},
60         {"startTime": 1063.990, "type":"BeginFrame", "thread":"implSide"},
61         {"startTime": 1079.990, "type":"BeginFrame", "thread":"implSide"},
62         {"startTime": 1095.990, "type":"BeginFrame", "thread":"implSide"},
63         {"startTime": 1100.000, "data":{}, "endTime":1103.999,"type":"Program", "children":[
64             {"startTime":1100.001, "type":"BeginFrame", "data":{"id":"5"}},
65             {"startTime":1100.002, "endTime":1103.999, "type":"FunctionCall" }
66         ]},
67         {"startTime": 1105.000, "type":"ActivateLayerTree", "data":{"id":"5"}, "thread":"implSide"},
68         {"startTime": 1115.990, "type":"BeginFrame", "thread":"implSide"},
69         {"startTime": 1116.990, "type":"Rasterize", "thread":"1", "endTime": 1118.990},
70         {"startTime": 1117.990, "type":"Rasterize", "thread":"2", "endTime": 1119.990},
71         {"startTime": 1116.000,"data":{}, "endTime":1119.999, "type":"Program", "children":[
72             {"startTime":1116.001, "type":"BeginFrame", "data":{"id":"6"}},
73             {"startTime":1116.002, "endTime":1119.999, "type":"FunctionCall" }
74         ]},
75         {"startTime": 1121.000, "type":"ActivateLayerTree", "data":{"id":"6"}, "thread":"implSide"},
76         {"startTime": 1131.990, "type":"BeginFrame", "thread":"implSide"},
77         {"startTime": 1132.000, "data":{}, "endTime":1135.999, "type":"Program", "children":[
78             {"startTime":1132.001, "type":"BeginFrame", "data":{"id":"7"}},
79             {"startTime":1132.002, "endTime":1135.999, "type":"FunctionCall" }
80         ]},
81         {"startTime": 1137.000, "type":"ActivateLayerTree", "data":{"id":"7"},"thread":"implSide"},
82         {"startTime": 1147.990, "type":"BeginFrame", "thread":"implSide"},
83         {"startTime": 1148.000, "data":{}, "endTime":1191.999, "type":"Program", "children":[
84             {"startTime":1148.001, "type":"BeginFrame", "data":{"id":"8"}},
85             {"startTime":1148.002, "endTime":1191.999, "type":"FunctionCall" }
86         ]},
87         {"startTime": 1192.000, "type":"ActivateLayerTree", "data":{"id":"8"}, "thread":"implSide"},
88         {"startTime": 1163.990, "type":"BeginFrame", "thread":"implSide"},
89         {"startTime": 1179.990, "type":"BeginFrame", "thread":"implSide"},
90         {"startTime": 1195.990, "type":"BeginFrame", "thread":"implSide"},
91         {"startTime": 1200.000, "data":{}, "endTime":1203.999,"type":"Program", "children":[
92             {"startTime":1200.001, "type":"BeginFrame", "data":{"id":"9"}},
93             {"startTime":1200.002, "endTime":1203.999, "type":"FunctionCall" }
94         ]},
95         {"startTime": 1205.000, "type":"ActivateLayerTree", "data":{"id":"9"}, "thread":"implSide"},
96         {"startTime": 1215.990, "type":"BeginFrame","thread":"implSide"},
97         {"startTime": 1216.000, "data":{}, "endTime":1219.999, "type":"Program", "children":[
98             {"startTime":1216.001, "type":"BeginFrame", "data":{"id":"10"}},
99             {"startTime":1216.002, "endTime":1219.999, "type":"FunctionCall" }
100         ]},
101         {"startTime": 1221.000, "type":"ActivateLayerTree", "data":{"id":"10"}, "thread":"implSide"},
102         {"startTime": 1231.990, "type":"BeginFrame","thread":"implSide"},
103         {"startTime": 1232.000, "data":{}, "endTime":1235.999, "type":"Program", "children":[
104             {"startTime":1232.001, "type":"BeginFrame","data":{"id":"11"}},
105             {"startTime":1232.002, "endTime":1235.999, "type":"FunctionCall" }
106         ]},
107         {"startTime": 1237.000, "type":"ActivateLayerTree", "data":{"id":"11"}, "thread":"implSide"},
108         {"startTime": 1247.990, "type":"BeginFrame", "thread":"implSide"},
109         {"startTime": 1248.000, "data":{}, "endTime":1291.999, "type":"Program", "children":[
110             {"startTime":1248.001, "type":"BeginFrame", "data":{"id":"12"}},
111             {"startTime":1248.002, "endTime":1291.999, "type":"FunctionCall" }
112         ]}
113     ];
114
115     InspectorTest.loadTimelineRecords(records);
116
117     var timelinePanel = WebInspector.panels.timeline;
118     timelinePanel._onModeChanged(WebInspector.TimelinePanel.Mode.Frames);
119     var overview = timelinePanel._overviewPane;
120     var frameOverview = overview._overviewControl;
121     InspectorTest.addResult("Main thread frames:");
122     frameOverview._mainThreadFrames.forEach(InspectorTest.dumpFrame, InspectorTest);
123     InspectorTest.addResult("Background frames:");
124     frameOverview._backgroundFrames.forEach(InspectorTest.dumpFrame, InspectorTest);
125     InspectorTest.completeTest();
126 }
127
128 </script>
129 </head>
130
131 <body onload="runTest()">
132 <p>
133 Test timeline records coalescing
134 </p>
135
136 </body>
137 </html>