<!doctype html>
<title>WebSockets: sending null</title>

<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=../../../constants.js?pipe=sub></script>
<div id=log></div>
<script>

async_test(function(t){
  var ws = new WebSocket(SCHEME_DOMAIN_PORT+'/echo');
  ws.onopen = t.step_func(function(e) {
    ws.send(null);
  });
  ws.onmessage = t.step_func(function(e) {
    assert_equals(e.data, 'null');
    ws.onclose = t.step_func(function(e) {
      ws.onclose = t.step_func(function() {assert_unreached()});
      setTimeout(function() {t.done()}, 50);
    })
    ws.close();
  });
  ws.onclose = ws.onerror = t.step_func(function() {assert_unreached()});
});
</script>
