Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(722)

Side by Side Diff: LayoutTests/paint/invalidation/spv2/canvas-putImageData.html

Issue 1302183007: Convert some text-based-repaint tests for spv2 (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 <!-- Based on fast/repaint/canvas-putImageData.html -->
1 <!-- Test for https://bugs.webkit.org/show_bug.cgi?id=46319 --> 2 <!-- Test for https://bugs.webkit.org/show_bug.cgi?id=46319 -->
2 <head> 3 <head>
3 <script src="resources/text-based-repaint.js"></script> 4 <script src="resources/paint-invalidation-test.js"></script>
4 </head> 5 </head>
5 <body> 6 <body>
6 <canvas id="canvas" width="100" height="100"></canvas> 7 <canvas id="canvas" width="100" height="100"></canvas>
7 <script> 8 <script>
8 var canvas = document.getElementById('canvas'); 9 var canvas = document.getElementById('canvas');
9 var ctx = canvas.getContext('2d'); 10 var ctx = canvas.getContext('2d');
10 11
11 // prepare imagedata 12 // prepare imagedata
12 ctx.fillStyle = "rgb(255, 0, 0)"; ctx.fillRect(0, 0, 100, 100); // red b ackground 13 ctx.fillStyle = "rgb(255, 0, 0)"; ctx.fillRect(0, 0, 100, 100); // red b ackground
13 ctx.fillStyle = "rgb(0, 255, 0)"; ctx.fillRect(10, 10, 10, 10); // inset green square 14 ctx.fillStyle = "rgb(0, 255, 0)"; ctx.fillRect(10, 10, 10, 10); // inset green square
14 var imageDataGreen = ctx.getImageData(10, 10, 10, 10); 15 var imageDataGreen = ctx.getImageData(10, 10, 10, 10);
15 var imageDataRedWithInsetGreen = ctx.getImageData(0, 0, 30, 30); 16 var imageDataRedWithInsetGreen = ctx.getImageData(0, 0, 30, 30);
16 17
17 // clear canvas to dark green 18 // clear canvas to dark green
18 ctx.fillStyle = "rgb(0, 128, 0)"; 19 ctx.fillStyle = "rgb(0, 128, 0)";
19 ctx.fillRect(0, 0, 100, 100); 20 ctx.fillRect(0, 0, 100, 100);
20 21
21 // fill target locations with dark red 22 // fill target locations with dark red
22 ctx.fillStyle = "rgb(128, 0, 0)"; 23 ctx.fillStyle = "rgb(128, 0, 0)";
23 ctx.fillRect(0, 0, 10, 10); 24 ctx.fillRect(0, 0, 10, 10);
24 ctx.fillRect(40, 40, 10, 10); 25 ctx.fillRect(40, 40, 10, 10);
25 ctx.fillRect(80, 80, 10, 10); 26 ctx.fillRect(80, 80, 10, 10);
26 window.testIsAsync = true; 27 window.testIsAsync = true;
27 28
28 function repaintTest() 29 window.expectedPaintInvalidationObjects = [
30 "LayoutHTMLCanvas CANVAS id='canvas'",
31 ];
32 function paintInvalidationTest()
29 { 33 {
30 // patch up red squares with putImageData 34 // patch up red squares with putImageData
31 ctx.putImageData(imageDataGreen, 0, 0); 35 ctx.putImageData(imageDataGreen, 0, 0);
32 ctx.putImageData(imageDataGreen, 40, 40); 36 ctx.putImageData(imageDataGreen, 40, 40);
33 ctx.putImageData(imageDataRedWithInsetGreen, 70, 70, 10, 10, 10, 10) ; 37 ctx.putImageData(imageDataRedWithInsetGreen, 70, 70, 10, 10, 10, 10) ;
34 // Because canvas invalidations are processed at the end of the curr ent task, 38 // Because canvas invalidations are processed at the end of the curr ent task,
35 // the repaint test has to end in a subsequent task in order to capt ure the repaint. 39 // the repaint test has to end in a subsequent task in order to capt ure the repaint.
36 setTimeout(finishRepaintTest, 0); 40 setTimeout(finishPaintInvalidationTest, 0);
37 } 41 }
38 42
39 window.onload = runRepaintTest; 43 window.onload = runPaintInvalidationTest;
40 </script> 44 </script>
41 </body> 45 </body>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698