<!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>
<canvas id="webgl-canvas"></canvas>
<script src="resources/presentation-setup.js"></script>
<script>
let fakeDisplays = fakeVRDisplays();

vr_test( (t) => {
  return navigator.getVRDisplays().then( (displays) => {
    promise_test( function() {
      return promise_rejects(this, "InvalidStateError",
          displays[0].requestPresent([{ source : webglCanvas }]));
    }, "requestPresent rejected");

    t.done();
  }, (err) => {
    t.step( () => {
      assert_unreached(err);
    }, "getVRDisplays rejected");
    t.done();
  });
}, [fakeDisplays["Pixel"]],
"Test requestPresent rejects without user gesture");

</script>
