// META: script=/resources/testdriver.js // META: script=/resources/testdriver-vendor.js // META: script=/bluetooth/resources/bluetooth-test.js // META: script=/bluetooth/resources/bluetooth-fake-devices.js 'use strict'; let iframe = document.createElement('iframe'); bluetooth_test(async () => { await getConnectedHealthThermometerDevice(); await new Promise(resolve => { iframe.src = '/bluetooth/resources/health-thermometer-iframe.html'; iframe.sandbox.add('allow-scripts'); iframe.allow = 'bluetooth'; document.body.appendChild(iframe); iframe.addEventListener('load', resolve); }); await new Promise(resolve => { iframe.contentWindow.postMessage({type: 'RequestLEScan'}, '*'); window.addEventListener('message', (messageEvent) => { assert_false(/^FAIL: .*/.test(messageEvent.data)); resolve(); }); }); }, 'Calls to Bluetooth APIs from a sandboxed iframe are valid.');