| OLD | NEW |
| 1 jsTestIsAsync = true; | |
| 2 if (window.testRunner) { | |
| 3 testRunner.dumpAsText(); | |
| 4 testRunner.waitUntilDone(); | |
| 5 } | |
| 6 | |
| 7 var numToBlobCalls = 9; | 1 var numToBlobCalls = 9; |
| 8 var numToDataURLCalls = 3; | 2 var numToDataURLCalls = 3; |
| 9 var testImages = []; | 3 var testImages = []; |
| 10 var canvasCtxs = []; | 4 var canvasCtxs = []; |
| 11 | 5 |
| 12 // Create an original canvas with content | 6 // Create an original canvas with content |
| 13 var canvas = document.createElement("canvas"); | 7 var canvas = document.createElement("canvas"); |
| 14 var ctx = canvas.getContext("2d"); | 8 var ctx = canvas.getContext("2d"); |
| 15 ctx.fillStyle = "#EE21AF"; | 9 ctx.fillStyle = "#EE21AF"; |
| 16 ctx.fillRect(0, 0, 250, 150); | 10 ctx.fillRect(0, 0, 250, 150); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 27 { | 21 { |
| 28 if (firstImageData[k]!=nextImageData[k]) | 22 if (firstImageData[k]!=nextImageData[k]) |
| 29 { | 23 { |
| 30 imageMatched = false; | 24 imageMatched = false; |
| 31 break; | 25 break; |
| 32 } | 26 } |
| 33 } | 27 } |
| 34 if (!imageMatched) | 28 if (!imageMatched) |
| 35 break; | 29 break; |
| 36 } | 30 } |
| 37 if (imageMatched) | 31 assert_true(imageMatched); |
| 38 testPassed("All images encoded by both async and main threads match one
another"); | |
| 39 else | |
| 40 testFailed("Not all images encoded by async and main threads match one a
nother"); | |
| 41 finishJSTest(); | |
| 42 } | 32 } |
| 43 | 33 |
| 44 var counter = numToBlobCalls + numToDataURLCalls; | 34 var counter = numToBlobCalls + numToDataURLCalls; |
| 45 function onCanvasDrawCompleted(ctx_test) | 35 function onCanvasDrawCompleted(asyncTest) |
| 46 { | 36 { |
| 47 counter = counter - 1; | 37 counter = counter - 1; |
| 48 if (counter == 0) { | 38 if (counter == 0) { |
| 49 testIfAllImagesAreCorrect(); | 39 testIfAllImagesAreCorrect(); |
| 50 if (window.testRunner) | 40 asyncTest.done(); |
| 51 testRunner.notifyDone(); | |
| 52 } | 41 } |
| 53 } | 42 } |
| 54 | 43 |
| 55 function createTestCase(i) | 44 function createTestCase(i, asyncTest) |
| 56 { | 45 { |
| 57 var canvas_test = document.createElement("canvas"); | 46 var canvas_test = document.createElement("canvas"); |
| 58 var ctx_test = canvas_test.getContext("2d"); | 47 var ctx_test = canvas_test.getContext("2d"); |
| 59 canvasCtxs[i] = ctx_test; | 48 canvasCtxs[i] = ctx_test; |
| 60 | 49 |
| 61 var newImg = new Image(); | 50 var newImg = new Image(); |
| 62 newImg.onload = function() { | 51 newImg.onload = function() { |
| 63 ctx_test.drawImage(newImg, 0, 0, 250, 150); | 52 ctx_test.drawImage(newImg, 0, 0, 250, 150); |
| 64 onCanvasDrawCompleted(ctx_test); | 53 onCanvasDrawCompleted(asyncTest); |
| 65 } | 54 } |
| 66 testImages[i] = newImg; | 55 testImages[i] = newImg; |
| 67 } | 56 } |
| 68 | 57 |
| 69 for (var i = 0; i < (numToBlobCalls + numToDataURLCalls); i++) | 58 function createAllTestCases(asyncTest) { |
| 70 { | 59 for (var i = 0; i < (numToBlobCalls + numToDataURLCalls); i++) |
| 71 createTestCase(i); | 60 createTestCase(i, asyncTest); |
| 72 } | 61 } |
| OLD | NEW |