blob: 81202084bb0c4fb6f0930de77c6d611f3f4d67c5 [file] [log] [blame]
<!DOCTYPE html>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<script src="resources/fake-vr-displays.js"></script>
<script src="file:///gen/layout_test_data/mojo/public/js/mojo_bindings.js"></script>
<script src="file:///gen/device/vr/vr_service.mojom.js"></script>
<script src="resources/mock-vr-service.js"></script>
<script src="resources/test-constants.js"></script>
<canvas id="webgl-canvas"></canvas>
<script src="resources/presentation-setup.js"></script>
<script>
let fakeDisplays = fakeVRDisplays();
let fakeDisplay = fakeDisplays["FakeRoomScale"];
vr_test( (t) => {
return navigator.getVRDisplays().then( (displays) => {
let display = displays[0];
let expectedParams = fakeDisplay.stageParameters;
let actualParams = display.stageParameters;
t.step( () => {
assert_true(display.capabilities.hasExternalDisplay);
assert_true(display.capabilities.hasPosition);
assert_equals(expectedParams.standingTransform.length,
actualParams.sittingToStandingTransform.length);
assert_equals(expectedParams.standingTransform.length, 16);
for (let i = 0; i < expectedParams.standingTransform.length; i++) {
assert_approx_equals(expectedParams.standingTransform[i],
actualParams.sittingToStandingTransform[i], FLOAT_EPSILON);
}
assert_approx_equals(expectedParams.sizeX, actualParams.sizeX,
FLOAT_EPSILON);
assert_approx_equals(expectedParams.sizeZ, actualParams.sizeZ,
FLOAT_EPSILON);
}, "Expected and actual values match");
t.done();
}, (err) => {
t.step( () => {
assert_unreached(err);
}, "getVRDisplays rejected");
t.done();
});
}, [fakeDisplay],
"Test actual stageParameters match expected parameters");
</script>