1*6777b538SAndroid Build Coastguard Worker<!DOCTYPE html> 2*6777b538SAndroid Build Coastguard Worker<html> 3*6777b538SAndroid Build Coastguard Worker<head> 4*6777b538SAndroid Build Coastguard Worker<title>test ws connection</title> 5*6777b538SAndroid Build Coastguard Worker<script type="text/javascript"> 6*6777b538SAndroid Build Coastguard Worker 7*6777b538SAndroid Build Coastguard Workervar pageConnection = new Promise((resolve, reject) => { 8*6777b538SAndroid Build Coastguard Worker var protocol = location.protocol.replace('http', 'ws'); 9*6777b538SAndroid Build Coastguard Worker var url = protocol + '//' + location.host + '/echo-with-no-extension'; 10*6777b538SAndroid Build Coastguard Worker var ws = new WebSocket(url); 11*6777b538SAndroid Build Coastguard Worker 12*6777b538SAndroid Build Coastguard Worker ws.onopen = resolve; 13*6777b538SAndroid Build Coastguard Worker ws.onclose = reject; 14*6777b538SAndroid Build Coastguard Worker}); 15*6777b538SAndroid Build Coastguard Worker 16*6777b538SAndroid Build Coastguard Workervar workerConnection = new Promise((resolve, reject) => { 17*6777b538SAndroid Build Coastguard Worker let worker = new Worker('./connect_check_worker.js'); 18*6777b538SAndroid Build Coastguard Worker worker.onmessage = event => { 19*6777b538SAndroid Build Coastguard Worker if (event.data === 'PASS') { 20*6777b538SAndroid Build Coastguard Worker resolve(); 21*6777b538SAndroid Build Coastguard Worker } else if (event.data === 'FAIL') { 22*6777b538SAndroid Build Coastguard Worker reject(); 23*6777b538SAndroid Build Coastguard Worker } 24*6777b538SAndroid Build Coastguard Worker }; 25*6777b538SAndroid Build Coastguard Worker worker.onerror = reject; 26*6777b538SAndroid Build Coastguard Worker 27*6777b538SAndroid Build Coastguard Worker // Start the worker. 28*6777b538SAndroid Build Coastguard Worker worker.postMessage(''); 29*6777b538SAndroid Build Coastguard Worker}); 30*6777b538SAndroid Build Coastguard Worker 31*6777b538SAndroid Build Coastguard WorkerPromise.all([pageConnection, workerConnection]).then(() => { 32*6777b538SAndroid Build Coastguard Worker // Set document title to 'PASS'. The test observer catches this title changes 33*6777b538SAndroid Build Coastguard Worker // to know the result. 34*6777b538SAndroid Build Coastguard Worker document.title = 'PASS'; 35*6777b538SAndroid Build Coastguard Worker}, () => { 36*6777b538SAndroid Build Coastguard Worker // Set document title to 'FAIL'. 37*6777b538SAndroid Build Coastguard Worker document.title = 'FAIL'; 38*6777b538SAndroid Build Coastguard Worker}); 39*6777b538SAndroid Build Coastguard Worker 40*6777b538SAndroid Build Coastguard Worker</script> 41*6777b538SAndroid Build Coastguard Worker</head> 42*6777b538SAndroid Build Coastguard Worker</html> 43