<!DOCTYPE html>
<html>
<head>
<title>test ws connection</title>
<script type="text/javascript">

var pageConnection = new Promise((resolve, reject) => {
  var protocol = location.protocol.replace('http', 'ws');
  var url = protocol + '//' + location.host + '/echo-with-no-extension';
  var ws = new WebSocket(url);

  ws.onopen = resolve;
  ws.onclose = reject;
});

var workerConnection = new Promise((resolve, reject) => {
  let worker = new Worker('./connect_check_worker.js');
  worker.onmessage = event => {
    if (event.data === 'PASS') {
      resolve();
    } else if (event.data === 'FAIL') {
      reject();
    }
  };

  // Start the worker.
  worker.postMessage('');
});

Promise.all([pageConnection, workerConnection]).then(() => {
  // Set document title to 'PASS'. The test observer catches this title changes
  // to know the result.
  document.title = 'PASS';
}, () => {
  // Set document title to 'FAIL'.
  document.title = 'FAIL';
});

</script>
</head>
</html>
