open-in-iframe.html (966B)
1 <!DOCTYPE html> 2 3 <script src="/resources/testdriver.js"></script> 4 <script src="/resources/testdriver-vendor.js"></script> 5 6 <body> 7 <button>Fake user gesture</button> 8 </body> 9 10 <script> 11 'use strict'; 12 13 test_driver.set_test_context(parent); 14 15 window.onmessage = messageEvent => { 16 switch (messageEvent.data.type) { 17 case 'GetPorts': 18 navigator.serial.getPorts() 19 .then(ports => parent.postMessage('Success', '*')) 20 .catch(err => parent.postMessage(`FAIL: ${err}`, '*')); 21 break; 22 case 'RequestPort': 23 test_driver.click(document.getElementsByTagName('button')[0]) 24 .then(() => navigator.serial.requestPort({filters: []})) 25 .then(port => parent.postMessage('Success', '*')) 26 .catch(err => parent.postMessage(`FAIL: ${err}`, '*')); 27 break; 28 default: 29 parent.postMessage( 30 `FAIL: Bad message type: ${messageEvent.data}`, '*'); 31 }; 32 }; 33 </script>