<!doctype html>
<title>WebSockets: setting HttpOnly cookies in ws response, checking ws request</title>
<meta name=timeout content=long>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=../constants.js?pipe=sub></script>
<meta name="variant" content="">
<meta name="variant" content="?wss">
<div id=log></div>
<script>
setup({explicit_done:true})
var cookie_id = ((new Date())-0) + '.' + Math.random();

var t = async_test(function(t) {
  var iframe = document.createElement('iframe');
  t.add_cleanup(function() {
    // remove cookie
    iframe.src = 'support/set-cookie.py?'+encodeURIComponent('ws_test_'+cookie_id+'=; Path=/; HttpOnly; Expires=Sun, 06 Nov 1994 08:49:37 GMT');
    iframe.onload = done;
  });
  var ws = new WebSocket(SCHEME_DOMAIN_PORT+'/set-cookie_http?'+cookie_id);
  ws.onopen = t.step_func(function(e) {
    var ws2 = new WebSocket(SCHEME_DOMAIN_PORT+'/echo-cookie');
    ws2.onmessage = t.step_func(function(e) {
      ws.close();
      ws.onclose = null;
      ws2.close();
      assert_regexp_match(e.data, new RegExp('ws_test_'+cookie_id+'=test'));
      t.done();
    });
  });
  ws.onerror = ws.onclose = t.step_func(function(e) {assert_unreached(e.type)});
  document.body.appendChild(iframe);
})
</script>
