blob: 3cf67ebbe732bc4b80c22e06026d9b1cfa8f6ffe [file] [log] [blame]
<!DOCTYPE HTML>
<html>
<head>
<script src="../../../../js-test-resources/js-test-pre.js"></script>
</head>
<body>
<div id="description"></div>
<div id="console"></div>
<script>
description("Test whether WebSocket rejects invalid deflate-frame parameters.");
window.jsTestIsAsync = true;
var closeEvent;
var testCase = [
"x-foo",
"max_window_bits=7",
"max_window_bits=16",
"no_context_takeover=foo",
"max_window_bits=8; no_context_takeover; x-foo"
];
function doTest(index)
{
var parameter = testCase[index];
var url = "ws://localhost:8880/websocket/tests/hybi/deflate-frame-invalid-parameter?" + encodeURI(parameter);
var ws = new WebSocket(url);
debug("Testing parameter: \"" + parameter + "\"");
ws.onmessage = function(event)
{
var message = event.data;
testFailed("onmessage() was called. (message = \"" + message + "\")");
};
ws.onclose = function(event)
{
debug("onclose() was called.");
closeEvent = event;
shouldBeFalse("closeEvent.wasClean");
if (index === testCase.length - 1)
finishJSTest();
else
doTest(index + 1);
};
}
doTest(0);
</script>
<script src="../../../../js-test-resources/js-test-post.js"></script>
</body>
</html>