blob: b04ceeaf6aff8bbfbbdb9e50118a1a0692bb587f [file] [log] [blame]
<!DOCTYPE html>
<script src="../resources/testharness.js"></script>
<script src="../resources/testharnessreport.js"></script>
<script src="file:///gen/layout_test_data/mojo/public/js/mojo_bindings.js"></script>
<script src="file:///gen/device/vr/public/mojom/vr_service.mojom.js"></script>
<script src="../external/wpt/resources/chromium/webxr-test.js"></script>
<script src="resources/vr-test-utils.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["Pixel"];
vr_test( (t) => {
return navigator.getVRDisplays().then( (displays) => {
let display = displays[0];
let scale = fakeDisplay.webvrDefaultFramebufferScale;
function compareEyes(actual, expected) {
t.step( () => {
assert_equals(actual.offset.length, expected.offset.length);
for (let i = 0; i < expected.offset.length; i++) {
assert_approx_equals(actual.offset[i], expected.offset[i],
FLOAT_EPSILON);
}
assert_equals(actual.renderWidth, expected.renderWidth * scale);
assert_equals(actual.renderHeight, expected.renderHeight * scale);
}, "Returned eye parameters match provided parameters");
}
compareEyes(display.getEyeParameters("left"), fakeDisplay.leftEye);
compareEyes(display.getEyeParameters("right"), fakeDisplay.rightEye);
t.done();
}, (err) => {
t.step( () => {
assert_unreached(err);
}, "getVRDisplays rejected");
t.done();
});
}, [fakeDisplay],
"Test that actual eye parameters match the expected parameters");
</script>