diff options
Diffstat (limited to 'dom/vr/test/mochitest/test_vrController_displayId.html')
-rw-r--r-- | dom/vr/test/mochitest/test_vrController_displayId.html | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/dom/vr/test/mochitest/test_vrController_displayId.html b/dom/vr/test/mochitest/test_vrController_displayId.html new file mode 100644 index 0000000000..e69e3920d2 --- /dev/null +++ b/dom/vr/test/mochitest/test_vrController_displayId.html @@ -0,0 +1,57 @@ +<!DOCTYPE html> +<html> + <head> + <title>VRController DisplayId</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="runVRTest.js"></script> + </head> + <body> + <script> + "use strict"; + var vrDisplay; + var controllerCount = 0; + + function addController() { + promise_test((test) => { + return VRSimulationDriver.AttachVRController().then((controller) => { + controller.newButtonEvent(0, true); + }); + }, "Finish to add VRController."); + } + + function listenControllerEvents() { + async_test(function(t) { + window.addEventListener("gamepadbuttondown", function(e) { + assert_equals(e.gamepad.displayId, vrDisplay.displayId, "gamepad.displayId should be equal to vrDisplay."); + assert_equals(e.gamepad.id, "Puppet Gamepad", "gamepad.id must be equal to 'Puppet Gamepad'."); + ++controllerCount; + if (controllerCount == 2) { + t.done(); + } + }); + }, "Finish to verify VRController.displayId."); + } + + function startTest() { + promise_test((test) => { + listenControllerEvents(); + return VRSimulationDriver.AttachWebVRDisplay().then(() => { + return navigator.getVRDisplays().then((displays) => { + vrDisplay = displays[0]; + assert_equals(displays.length, 1, "displays.length must be one after attach."); + assert_equals(vrDisplay.displayName, "Puppet HMD", "display.displayName must be equal to 'Puppet HMD'."); + addController(); + addController(); + }); + }); + }, "Finish to add VRDisplay."); + } + + runVRTest(startTest); + </script> + </body> +</html> |