<!-- Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/ -->
<!doctype HTML>
<html>
  <head>
    <meta charset="utf-8"/>
    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
    <meta http-equiv="Pragma" content="no-cache" />
    <meta http-equiv="Expires" content="0" />
    <title>WebSocket Inspection Test Page</title>
  </head>
  <body>
    <h1>WebSocket Inspection Test Page</h1>
    <script type="text/javascript">
      /* exported openConnection, closeConnection, sendData, sendFrames */
      "use strict";

      let ws;
      function openConnection(numFramesToSend) {
        return new Promise(resolve => {
          ws = new WebSocket(
            "ws://mochi.test:8888/browser/devtools/client/netmonitor/test/file_ws_backend");

          ws.onopen = e => {
            for (let i = 0; i < numFramesToSend; i++) {
              ws.send("Payload " + i);
            }
            resolve();
          };
        });
      }

      function sendFrames(numFramesToSend) {
        return new Promise(resolve => {
          for (let i = 0; i < numFramesToSend; i++) {
            ws.send("Payload " + i);
          }
        resolve();
        })
      }

      function closeConnection() {
        return new Promise(resolve => {
          ws.onclose = e => {
            resolve();
          }
          ws.close();
        })
      }

      function sendData(payload) {
        ws.send(payload);
      }
    </script>
  </body>
</html>
