tizen beta release
[framework/web/webkit-efl.git] / LayoutTests / http / tests / websocket / tests / hixie76 / handshake-fail-by-maxlength.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 <html>
3 <head>
4 <script src="../../../../js-test-resources/js-test-pre.js"></script>
5 </head>
6 <body>
7 <div id="description"></div>
8 <div id="console"></div>
9 <script>
10 description('Connection should fail immediately, rather than succeeding or staying in limbo until timeout, if handshake is longer than 1024 bytes.');
11
12 window.jsTestIsAsync = true;
13
14 var timedOut = false;
15 var connected = false;
16 var origin;
17
18 function endTest() {
19     shouldBeFalse('timedOut');
20     shouldBeFalse('connected');
21     shouldBeUndefined('origin');
22     clearTimeout(timeoutID);
23     finishJSTest();
24 }
25
26 var url = 'ws://localhost:8880/websocket/tests/hixie76/handshake-fail-by-maxlength';
27 var ws = new WebSocket(url);
28
29 ws.onopen = function()
30 {
31     debug('Connected');
32     connected = true;
33 }
34
35 ws.onmessage = function(messageEvent)
36 {
37     origin = messageEvent.data;
38     debug('origin = ' + origin);
39     ws.close();
40 }
41
42 ws.onclose = function()
43 {
44     endTest();
45 }
46
47 function timeoutCallback()
48 {
49     debug('Timed out (state = ' + ws.readyState + ')');
50     timedOut = true;
51     endTest();
52 }
53
54 var timeoutID = setTimeout(timeoutCallback, 3000);
55
56 </script>
57 <script src="../../../../js-test-resources/js-test-post.js"></script>
58 </body>
59 </html>