Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / fast / canvas / canvas-large-pattern.html
blob1ba4fa6af3d2f86239f0f596c519caca6fc96e28
1 <!DOCTYPE HTML>
2 <html>
3 <body>
4 <script src="../../resources/js-test.js"></script>
5 <script type="text/javascript">
7 description("Verifies createPattern using a source image that is a canvas 40k pixels wide.");
8 // This test does not currently succeed because skia does not handle
9 // canvases more than 32k pixels wide. For now, this test serves the
10 // purpose of verifying that this use case does not crash the browser.
11 // Crasher bug: crbug.com/281504
13 var canvas = document.createElement('canvas');
14 canvas.width = 40000;
15 var context = canvas.getContext('2d');
16 context.fillStyle = '#0f0';
17 context.fillRect(0, 0, 1, 1);
19 var dstCanvas = document.createElement('canvas');
20 var dstContext = dstCanvas.getContext('2d');
21 var pattern = dstContext.createPattern(canvas, 'repeat');
22 dstContext.fillStyle = pattern;
23 dstContext.fillRect(0, 0, dstCanvas.width, dstCanvas.height);
25 var imageData = dstContext.getImageData(0, 0, 1, 1);
26 var imgdata = imageData.data;
27 shouldBe("imgdata[0]", "0");
28 shouldBe("imgdata[1]", "255");
29 shouldBe("imgdata[2]", "0");
30 shouldBe("imgdata[3]", "255");
32 imageData = dstContext.getImageData(1, 0, 1, 1);
33 imgdata = imageData.data;
34 shouldBe("imgdata[0]", "0");
35 shouldBe("imgdata[1]", "0");
36 shouldBe("imgdata[2]", "0");
37 shouldBe("imgdata[3]", "0");
39 imageData = dstContext.getImageData(0, 1, 1, 1);
40 imgdata = imageData.data;
41 shouldBe("imgdata[0]", "0");
42 shouldBe("imgdata[1]", "0");
43 shouldBe("imgdata[2]", "0");
44 shouldBe("imgdata[3]", "0");
45 </script>
46 </body>
47 </html>