<!doctype html>
<title>WebSockets: send() with unpaired surrogate when readyState is CONNECTING</title>

<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=../../../constants.sub.js></script>
<meta name="variant" content="">
<meta name="variant" content="?wss">
<div id=log></div>
<script>
test(function(t) {
  var ws = new WebSocket(SCHEME_DOMAIN_PORT+'/');
  assert_throws_dom("INVALID_STATE_ERR", function(){ws.send('a\uDC00x')});
}, "lone low surrogate");

test(function(t) {
  var ws = new WebSocket(SCHEME_DOMAIN_PORT+'/');
  assert_throws_dom("INVALID_STATE_ERR", function(){ws.send('a\uD800x')});
}, "lone high surrogate");

test(function(t) {
  var ws = new WebSocket(SCHEME_DOMAIN_PORT+'/');
  assert_throws_dom("INVALID_STATE_ERR", function(){ws.send('a\uDC00\uD800x')});
}, "surrogates in wrong order");
</script>
