Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / inspector / profiler / canvas2d / canvas-get-resource-state.html
1 <html>
2 <head>
3     <script src="../../../http/tests/inspector/inspector-test.js"></script>
4     <script src="../canvas-profiler-test.js"></script>
5 <script>
6
7 var context;
8
9 function createCanvasContext()
10 {
11     context = createCanvas2DContext();
12     console.assert(context, "Failed to create a canvas context");
13 }
14
15 function doCanvasCalls()
16 {
17     context.beginPath();
18     context.rect(0, 0, 100, 100);
19     // Changing canvas 2D state.
20     context.fillStyle = "red";
21     context.font = "13px sans-serif";
22     context.globalAlpha = 0;
23     context.globalCompositeOperation = "xor";
24     context.lineCap = "square";
25     context.lineDashOffset = 2;
26     context.lineJoin = "round";
27     context.lineWidth = 3;
28     context.miterLimit = 11;
29     context.shadowBlur = 2;
30     context.shadowColor = "#123456";
31     context.shadowOffsetX = 3;
32     context.shadowOffsetY = 4;
33     context.strokeStyle = "rgb(101, 102, 103)";
34     context.textAlign = "left";
35     context.textBaseline = "middle";
36     context.imageSmoothingEnabled = false;
37     context.setLineDash([3,4]);
38 }
39
40 function test()
41 {
42     var traceLogId;
43     var traceLogCallsNumber;
44     InspectorTest.enableCanvasAgent(step1);
45     function step1()
46     {
47         InspectorTest.evaluateInConsole("createCanvasContext()", step2);
48     }
49     function step2()
50     {
51         CanvasAgent.startCapturing(didStartCapturing);
52     }
53     function didStartCapturing(error, id)
54     {
55         InspectorTest.assertTrue(!error && !!id, "Unexpected error: " + error);
56         InspectorTest.addResult("\nStarted capturing.");
57         traceLogId = id;
58         InspectorTest.evaluateInConsole("doCanvasCalls()", didCanvasCalls);
59     }
60     function didCanvasCalls()
61     {
62         CanvasAgent.stopCapturing(traceLogId, didStopCapturing);
63     }
64     function didStopCapturing()
65     {
66         InspectorTest.addResult("Stopped capturing.");
67         CanvasAgent.getTraceLog(traceLogId, 0, undefined, didReceiveTraceLog);
68     }
69     function didReceiveTraceLog(error, traceLog)
70     {
71         InspectorTest.assertTrue(!error && !!traceLog, "Unexpected error: " + error);
72         traceLogCallsNumber = traceLog.calls.length;
73         InspectorTest.addResult("Number of trace log calls received: " + traceLogCallsNumber);
74         CanvasAgent.replayTraceLog(traceLogId, 0, didReplayFirstCall);
75     }
76     function didReplayFirstCall(error, resourceState)
77     {
78         InspectorTest.assertTrue(!error && !!resourceState, "Unexpected error: " + error);
79         InspectorTest.addResult("\n--- Canvas 2D initial state ---");
80         InspectorTest.dumpResourceState(resourceState);
81         CanvasAgent.replayTraceLog(traceLogId, traceLogCallsNumber - 1, didReplayLastCall);
82     }
83     function didReplayLastCall(error, resourceState)
84     {
85         InspectorTest.assertTrue(!error && !!resourceState, "Unexpected error: " + error);
86         InspectorTest.addResult("\n--- Canvas 2D state after canvas calls ---");
87         InspectorTest.dumpResourceState(resourceState);
88         InspectorTest.completeTest();
89     }
90 }
91
92 </script>
93 </head>
94 <body onload="runTest()">
95 <p>
96 Tests canvas 2D ResourceState during the replay.
97 </p>
98 </body>
99 </html>