| OLD | NEW |
| (Empty) |
| 1 <html> | |
| 2 <head> | |
| 3 <script src="../../../resources/js-test.js"></script> | |
| 4 <script src="resources/webgl-test.js"></script> | |
| 5 <script src="resources/webgl-test-utils.js"></script> | |
| 6 <script> | |
| 7 | |
| 8 var evt; | |
| 9 var canvas; | |
| 10 var context; | |
| 11 var extension; | |
| 12 | |
| 13 function createNewCanvas() | |
| 14 { | |
| 15 canvas = document.createElement("canvas"); | |
| 16 canvas.width = 1; | |
| 17 canvas.height = 1; | |
| 18 | |
| 19 context = WebGLTestUtils.create3DContext(canvas); | |
| 20 extension = context.getExtension("WEBGL_lose_context"); | |
| 21 if (!extension) { | |
| 22 debug("Could not find the WEBGL_lose_context extension."); | |
| 23 return; | |
| 24 } | |
| 25 } | |
| 26 | |
| 27 function runTest1() | |
| 28 { | |
| 29 if (window.initNonKhronosFramework) | |
| 30 window.initNonKhronosFramework(true); | |
| 31 createNewCanvas(); | |
| 32 canvas.addEventListener("webglcontextlost", function(e) { | |
| 33 evt = e; | |
| 34 debug("Test that the event passed to a listener of webglcontextlost is a
WebGLContextEvent.") | |
| 35 shouldBe("evt.toString()", "'[object WebGLContextEvent]'"); | |
| 36 shouldBe("evt.statusMessage", "''"); | |
| 37 // Start the next test when event dispatch has finished. | |
| 38 setTimeout(function() { | |
| 39 runTest2(); | |
| 40 }, 0); | |
| 41 }, false); | |
| 42 extension.loseContext(); | |
| 43 } | |
| 44 | |
| 45 function runTest2() | |
| 46 { | |
| 47 createNewCanvas(); | |
| 48 canvas.addEventListener("webglcontextlost", function(e) { | |
| 49 e.preventDefault(); | |
| 50 // Restore the context after event dispatch has finished. | |
| 51 setTimeout(function() { | |
| 52 // Because context restoration is specified as being asynchronous, we
can not verify | |
| 53 // that the GL error state is empty here. | |
| 54 extension.restoreContext(); | |
| 55 }, 0); | |
| 56 }, false); | |
| 57 canvas.addEventListener("webglcontextrestored", function(e) { | |
| 58 evt = e; | |
| 59 shouldBe("context.getError()", "context.NO_ERROR"); | |
| 60 debug("Test that the event passed to a listener of webglcontextrestored
is a WebGLContextEvent.") | |
| 61 shouldBe("evt.toString()", "'[object WebGLContextEvent]'"); | |
| 62 shouldBe("evt.statusMessage", "''"); | |
| 63 | |
| 64 setTimeout(finish, 0); | |
| 65 }, false); | |
| 66 extension.loseContext(); | |
| 67 } | |
| 68 | |
| 69 function finish() { | |
| 70 finishJSTest(); | |
| 71 } | |
| 72 | |
| 73 </script> | |
| 74 | |
| 75 </head> | |
| 76 <body onload="runTest1()"> | |
| 77 <div id="description"></div> | |
| 78 <div id="console"></div> | |
| 79 <canvas id="canvas"> | |
| 80 </body> | |
| 81 </html> | |
| OLD | NEW |