Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / http / tests / websocket / multiple-subprotocols.html
blob24449dbbd3aee154704121e98a4ad240ab231f76
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <script src="/js-test-resources/js-test.js"></script>
5 </head>
6 <body>
7 <div id="description"></div>
8 <div id="console"></div>
9 <script type="text/javascript">
10 description("Test WebSocket subprotocol negotiation.");
12 window.jsTestIsAsync = true;
14 var ws = new WebSocket("ws://127.0.0.1:8880/protocol-test?protocol=superchat", ["chat", "superchat"]);
15 var closeEvent;
16 var receivedMessage;
18 shouldBeEqualToString("ws.protocol", "");
20 ws.onopen = function()
22 debug("Connected");
23 shouldBeEqualToString("ws.protocol", "superchat");
26 ws.onmessage = function(event)
28 receivedMessage = event.data;
29 debug("Received: " + receivedMessage);
30 shouldBeEqualToString("receivedMessage", "superchat");
33 ws.onclose = function(event)
35 debug("Closed");
36 shouldBeEqualToString("ws.protocol", "superchat");
37 closeEvent = event;
38 shouldBeTrue("closeEvent.wasClean");
39 setTimeout("checkAfterOnClose()", 0);
42 function checkAfterOnClose()
44 debug("Exited onclose handler");
45 shouldBeEqualToString("ws.protocol", "superchat");
46 finishJSTest();
49 </script>
50 </body>
51 </html>