<!DOCTYPE html>
<body>
  <script src=/resources/testharness.js></script>
  <script src=/resources/testharnessreport.js></script>
  <script src="resources/webxr_util.js"></script>
  <script src="resources/webxr_test_constants.js"></script>
  <script>
    xr_promise_test(
      "Requesting an immersive session when unsupported rejects",
      (t) => {
        return navigator.xr.test.simulateDeviceConnection(VALID_NON_IMMERSIVE_DEVICE)
          .then( (controller) => new Promise((resolve) => {
            navigator.xr.test.simulateUserActivation( () => {
              resolve(promise_rejects_dom(
                t,
                "NotSupportedError",
                navigator.xr.requestSession('immersive-vr')
              ))
            });
          }));
      });
  </script>
</body>
