diff options
Diffstat (limited to 'dom/vr/test/mochitest/test_vrDisplay_onvrdisplaydeactivate_crosscontent.html')
-rw-r--r-- | dom/vr/test/mochitest/test_vrDisplay_onvrdisplaydeactivate_crosscontent.html | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/dom/vr/test/mochitest/test_vrDisplay_onvrdisplaydeactivate_crosscontent.html b/dom/vr/test/mochitest/test_vrDisplay_onvrdisplaydeactivate_crosscontent.html new file mode 100644 index 0000000000..6c58e5efd1 --- /dev/null +++ b/dom/vr/test/mochitest/test_vrDisplay_onvrdisplaydeactivate_crosscontent.html @@ -0,0 +1,54 @@ +<html> + <head> + <title>VRDisplay onvrdisplaydeactivate Crosscontent test</title> + <meta name="timeout" content="long"/> + <meta http-equiv="Content-type" content="text/html;charset=UTF-8"> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + <script src="VRSimulationDriver.js"></script> + <script src="WebVRHelpers.js"></script> + <script src="requestPresent.js"></script> + <script src="runVRTest.js"></script> + </head> + <body> + <canvas id="vrCanvas"></canvas> + <script> + + function startTest() { + var canvas = document.getElementById("vrCanvas"); + var iframe1 = document.getElementById("iframe1").contentWindow; + var t = async_test("vrdisplaydeactivate crosscontent test"); + + window.addEventListener("vrdisplaydeactivate", () => { + t.step(() => { + assert_true(vrDisplay.isPresenting, + "VRDisplay should be still presenting now without being affected by the event."); + t.done(); + }); + }); + + iframe1.addEventListener("vrdisplaydeactivate", () => { + t.unreached_func("vrdisplaydeactivate should not be received by other iframe."); + }); + + promise_test((test) => { + return attachVRDisplay(test).then(() => { + return promise_test((test) => { + return setupVRDisplay(test).then(() => { + VRSimulationDriver.SetMountState(true); + VRSimulationDriver.UpdateVRDisplay(); + return WebVRHelpers.RequestPresentOnVRDisplay(vrDisplay, [{source: canvas}]); + }).then(() => { + VRSimulationDriver.SetMountState(false); + VRSimulationDriver.UpdateVRDisplay(); + }); + }); + }); + }); + } + + runVRTest(startTest); + </script> + <iframe id="iframe1"></iframe> + </body> +</html> |