OLD | NEW |
1 <html> | 1 <html> |
2 <head> | 2 <head> |
3 <script src="../js/resources/js-test-pre.js"></script> | 3 <script src="../js/resources/js-test-pre.js"></script> |
4 </head> | 4 </head> |
5 <body> | 5 <body> |
6 <script> | 6 <script> |
7 description("Ensure correct behavior of drawImage with ImageBitmaps constructed
from ImageBitmaps that are constructed from images (not pinned to memory) and ca
nvases (pinned to memory)."); | 7 description("Ensure correct behavior of drawImage with ImageBitmaps constructed
from ImageBitmaps that are constructed from images (not pinned to memory) and ca
nvases (pinned to memory)."); |
8 | 8 |
9 window.jsTestIsAsync = true; | 9 window.jsTestIsAsync = true; |
10 | 10 |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 var ctx = canvas.getContext("2d"); | 55 var ctx = canvas.getContext("2d"); |
56 | 56 |
57 image = new Image(); | 57 image = new Image(); |
58 image.onload = imageLoaded; | 58 image.onload = imageLoaded; |
59 image.src = aCanvas.toDataURL(); | 59 image.src = aCanvas.toDataURL(); |
60 | 60 |
61 function imageLoaded() { | 61 function imageLoaded() { |
62 var bitmapFromImage, bitmapFromCanvas; | 62 var bitmapFromImage, bitmapFromCanvas; |
63 var p1 = createImageBitmap(image, -10, -10, 20, 20).then(function(imageBitma
p) { bitmapFromImage = imageBitmap }); | 63 var p1 = createImageBitmap(image, -10, -10, 20, 20).then(function(imageBitma
p) { bitmapFromImage = imageBitmap }); |
64 var p2 = createImageBitmap(aCanvas, 10, 10, 20, 20).then(function(imageBitma
p) { bitmapFromCanvas = imageBitmap }); | 64 var p2 = createImageBitmap(aCanvas, 10, 10, 20, 20).then(function(imageBitma
p) { bitmapFromCanvas = imageBitmap }); |
65 Promise.every(p1, p2).then(function() { | 65 Promise.all([p1, p2]).then(function() { |
66 checkBitmaps(bitmapFromImage, bitmapFromCanvas); | 66 checkBitmaps(bitmapFromImage, bitmapFromCanvas); |
67 }, shouldNotBeCalled); | 67 }, shouldNotBeCalled); |
68 } | 68 } |
69 | 69 |
70 function checkBitmaps(bitmapFromImage, bitmapFromCanvas) { | 70 function checkBitmaps(bitmapFromImage, bitmapFromCanvas) { |
71 var funcs = []; | 71 var funcs = []; |
72 var p1 = createImageBitmap(bitmapFromImage).then(function(imageBitmap) { | 72 var p1 = createImageBitmap(bitmapFromImage).then(function(imageBitmap) { |
73 funcs[0] = checkDrawnToRect(imageBitmap, 10, 10, 10, 10); | 73 funcs[0] = checkDrawnToRect(imageBitmap, 10, 10, 10, 10); |
74 }); | 74 }); |
75 var p2 = createImageBitmap(bitmapFromImage, -10, -10, 30, 30).then(function(
imageBitmap) { | 75 var p2 = createImageBitmap(bitmapFromImage, -10, -10, 30, 30).then(function(
imageBitmap) { |
76 funcs[1] = checkDrawnToRect(imageBitmap, 20, 20, 10, 10); | 76 funcs[1] = checkDrawnToRect(imageBitmap, 20, 20, 10, 10); |
77 }); | 77 }); |
78 var p3 = createImageBitmap(bitmapFromImage, 10, 10, 20, 20).then(function(im
ageBitmap) { | 78 var p3 = createImageBitmap(bitmapFromImage, 10, 10, 20, 20).then(function(im
ageBitmap) { |
79 funcs[2] = checkDrawnToRect(imageBitmap, 0, 0, 10, 10); | 79 funcs[2] = checkDrawnToRect(imageBitmap, 0, 0, 10, 10); |
80 }); | 80 }); |
81 var p4 = createImageBitmap(bitmapFromCanvas).then(function(imageBitmap) { | 81 var p4 = createImageBitmap(bitmapFromCanvas).then(function(imageBitmap) { |
82 funcs[3] = checkDrawnToRect(imageBitmap, 0, 0, 10, 10); | 82 funcs[3] = checkDrawnToRect(imageBitmap, 0, 0, 10, 10); |
83 }); | 83 }); |
84 var p5 = createImageBitmap(bitmapFromCanvas, -15, -10, 35, 40).then(function
(imageBitmap) { | 84 var p5 = createImageBitmap(bitmapFromCanvas, -15, -10, 35, 40).then(function
(imageBitmap) { |
85 funcs[4] = checkDrawnToRect(imageBitmap, 15, 10, 10, 10); | 85 funcs[4] = checkDrawnToRect(imageBitmap, 15, 10, 10, 10); |
86 }); | 86 }); |
87 var p6 = createImageBitmap(bitmapFromCanvas, 5, 5, 10, 10).then(function(ima
geBitmap) { | 87 var p6 = createImageBitmap(bitmapFromCanvas, 5, 5, 10, 10).then(function(ima
geBitmap) { |
88 funcs[5] = checkDrawnToRect(imageBitmap, 0, 0, 5, 5); | 88 funcs[5] = checkDrawnToRect(imageBitmap, 0, 0, 5, 5); |
89 }); | 89 }); |
90 Promise.every(p1, p2, p3, p4, p5, p6).then(function() { | 90 Promise.all([p1, p2, p3, p4, p5, p6]).then(function() { |
91 for (var i = 0; i < funcs.length; ++i) | 91 for (var i = 0; i < funcs.length; ++i) |
92 funcs[i](); | 92 funcs[i](); |
93 finishJSTest(); | 93 finishJSTest(); |
94 }, shouldNotBeCalled); | 94 }, shouldNotBeCalled); |
95 } | 95 } |
96 | 96 |
97 function checkDrawnToRect(bitmap, x, y, w, h) { | 97 function checkDrawnToRect(bitmap, x, y, w, h) { |
98 // x, y, w, h are the expected location of the green square | 98 // x, y, w, h are the expected location of the green square |
99 var imageBitmap = bitmap; | 99 var imageBitmap = bitmap; |
100 var x1 = x; | 100 var x1 = x; |
(...skipping 28 matching lines...) Expand all Loading... |
129 clearContext(ctx); | 129 clearContext(ctx); |
130 ctx.drawImage(imageBitmap, x1, y1, w1, h1, 0, 0, 50, 50); | 130 ctx.drawImage(imageBitmap, x1, y1, w1, h1, 0, 0, 50, 50); |
131 shouldBeFilled(0, 0, 50, 50); | 131 shouldBeFilled(0, 0, 50, 50); |
132 } | 132 } |
133 } | 133 } |
134 | 134 |
135 </script> | 135 </script> |
136 <script src="../js/resources/js-test-post.js"></script> | 136 <script src="../js/resources/js-test-post.js"></script> |
137 </body> | 137 </body> |
138 </html> | 138 </html> |
OLD | NEW |