blob: ea2d3d950d2af84b5861d041bf5cc90b9115e4e3 [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="../xr/resources/xr-test-utils.js"></script>
<script src="../xr/resources/test-constants.js"></script>
<canvas id="webgl-canvas"></canvas>
<script>
promise_test( (t) => {
webglCanvasSetup();
return XRTest.simulateDeviceConnection({ supportsImmersive:true })
.then( (controller) => { return navigator.xr.requestDevice() })
.then( (device) => new Promise((resolve) => {
runWithUserGesture( () => {
resolve(device.requestSession({ immersive: true })
.then( (session) => new Promise((resolve) => {
try {
let webglLayer = new XRWebGLLayer(session, gl);
reject("XRWebGLLayer should fail with invalid arguments");
} catch (err) {
assert_equals(err.name, "InvalidStateError");
resolve();
}
})));
});
}));
}, "XRWebGLLayer throws error when the session device is not the set device");
</script>