https://github.com/web-platform-tests/wpt
Raw File
Tip revision: 8ba8d81fc0a97e9f5332a23d532ee9b40cf3104b authored by moz-wptsync-bot on 11 January 2018, 16:11:49 UTC
P2: Add wpt tests to verify service workers redirect the hash fragment if the redirect URL doesn't have one.
Tip revision: 8ba8d81
usbDevice-iframe.https.html
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="resources/fake-devices.js"></script>
<script src="resources/usb-helpers.js"></script>
<script>
'use strict';

function runIframeDisconnectTest(onDeviceConnected) {
  return new Promise((resolve, reject) => {
    let opened = false;

    let iframe = document.createElement('iframe');
    iframe.src = 'resources/open-in-iframe.html';
    iframe.onload = () => {
      navigator.usb.test.attachToWindow(iframe.contentWindow).then(() => {
        iframe.contentWindow.postMessage('Ready', '*');
      });
    };

    window.onmessage = messageEvent => {
      if (messageEvent.data == 'Ready') {
        let fakeDevice = navigator.usb.test.addFakeDevice(fakeDeviceInit);
        fakeDevice.onclose = () => {
          assert_true(opened);
          resolve();
        };
      } else if (messageEvent.data == 'Success') {
        opened = true;
        onDeviceConnected(iframe);
      } else {
        reject(messageEvent.data);
      }
    };

    document.body.appendChild(iframe);
  });
}

usb_test(() => {
  return runIframeDisconnectTest(iframe => {
    document.body.removeChild(iframe);
  });
}, 'detaching iframe disconnects device.');

usb_test(() => {
  return runIframeDisconnectTest(iframe => {
    iframe.src = 'about:blank';
  });
}, 'navigating iframe disconnects device.');
</script>
back to top