зеркало из https://github.com/mozilla/gecko-dev.git
55 строки
1.7 KiB
HTML
55 строки
1.7 KiB
HTML
<!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.");
|
|
++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.");
|
|
addController();
|
|
addController();
|
|
});
|
|
});
|
|
}, "Finish to add VRDisplay.");
|
|
}
|
|
|
|
runVRTest(startTest);
|
|
</script>
|
|
</body>
|
|
</html> |