tizen beta release
[profile/ivi/webkit-efl.git] / LayoutTests / fast / canvas / 2d.composite.globalAlpha.fillPath.html
1  <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 <!-- Test based on that found at
3      http://http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.globalAlpha.html
4   -->
5 <html>
6 <head>
7 <script src="../js/resources/js-test-pre.js"></script>
8 </head>
9 <body>
10 <canvas id="canvas" width="100" height="100"></canvas>
11 <script>
12
13 function assertPixelApprox(ctx, x,y, r,g,b,a, pos, colour, tolerance)
14 {
15     var imgdata = ctx.getImageData(x, y, 1, 1);
16     var diff = Math.max(Math.abs(r-imgdata.data[0]), Math.abs(g-imgdata.data[1]), Math.abs(b-imgdata.data[2]), Math.abs(a-imgdata.data[3]));
17     shouldBeFalse((diff > tolerance).toString());
18 }
19
20 description("The test to ensure correct sync behaviour with globalAlpha and fillPath() in accelerated-2d-canvas mode.");
21 var ctx = document.getElementById('canvas').getContext('2d');
22
23 ctx.fillStyle = '#0f0';
24 ctx.fillRect(0, 0, 100, 100);
25 ctx.globalAlpha = 0.01; // avoid any potential alpha=0 optimisations
26 ctx.beginPath();
27 ctx.fillStyle = '#f00';
28 ctx.rect(0, 0, 100, 100);
29 ctx.fill();
30 assertPixelApprox(ctx, 50,25, 2,253,0,255, "50,25", "2,253,0,255", 2);
31
32 </script>
33 <script src="../js/resources/js-test-post.js"></script>
34 </body>
35 </html>
36