Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 <!DOCTYPE html> | |
| 2 <html> | |
| 3 <script src="../../resources/js-test.js"></script> | |
| 4 <body> | |
| 5 <script id="myWorker" type="text/worker"> | |
| 6 self.onmessage = function(e) { | |
| 7 var aCanvas = new OffscreenCanvas(50, 50); | |
| 8 try { | |
| 9 var ctx = aCanvas.getContext('2d'); | |
| 10 if (toString.call(ctx) != '[object OffscreenCanvasRenderingContext2D]') { | |
| 11 self.postMessage({ outcome : "error", errorMessage : | |
| 12 "aCanvas.getContext('2d') does not return [object OffscreenCanvasR enderingContext2D]" }); | |
| 13 } else { | |
| 14 self.postMessage({ outcome : "success", errorMessage : "" }); | |
| 15 } | |
| 16 } catch (e) { | |
| 17 self.postMessage({ outcome : "error", errorMessage : e }); | |
| 18 } | |
| 19 }; | |
| 20 </script> | |
| 21 | |
| 22 <script> | |
| 23 jsTestIsAsync = true; | |
| 24 description("Tests that the 2D context of OffscreenCanvas can be constructed on a worker thread."); | |
| 25 | |
| 26 function makeWorker(script) { | |
| 27 var blob = new Blob([script]); | |
| 28 return new Worker(URL.createObjectURL(blob)); | |
| 29 } | |
| 30 | |
| 31 function handleMessageFromWorker(msg) { | |
| 32 switch (msg.data.outcome) { | |
|
Justin Novosad
2016/03/07 15:30:26
This test is more complex than necessary. Instead
| |
| 33 case 'success': | |
| 34 testPassed("getContext('2d') correctly returns [object OffscreenCanvasRend eringContext2D]."); | |
| 35 break; | |
| 36 case 'error': | |
| 37 testFailed(msg.data.errorMessage); | |
| 38 break; | |
| 39 default: | |
| 40 testFailed("Unexpected failure"); | |
| 41 break; | |
| 42 } | |
| 43 finishJSTest(); | |
| 44 } | |
| 45 | |
| 46 var worker = makeWorker(document.getElementById('myWorker').textContent); | |
| 47 worker.addEventListener('message', handleMessageFromWorker); | |
| 48 worker.postMessage(""); | |
| 49 </script> | |
| 50 | |
| 51 </body> | |
| 52 </html> | |
| OLD | NEW |