| <!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> |
| <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(); |
| 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> |