blob: 6920661d915ea9193d3ecf8b4516fcd65996c05a [file] [log] [blame]
<!DOCTYPE HTML>
<html>
<head>
<script src="/js-test-resources/js-test.js"></script>
</head>
<body>
<div id="description"></div>
<div id="console"></div>
<script type="text/javascript">
description("Tests whether WebSocket ignores frames with reserved opcode.");
window.jsTestIsAsync = true;
var closeEvent;
function doTest(opcode)
{
if (opcode >= 0x10) {
finishJSTest();
return;
}
if (opcode == 0x0 || opcode == 0x1 || opcode == 0x2 || opcode == 0x8 || opcode == 0x9 || opcode == 0xA) {
doTest(opcode + 1);
return;
}
debug("Opcode " + opcode + ": Test started.");
var url = "ws://localhost:8880/reserved-opcodes?opcode=" + opcode;
var ws = new WebSocket(url);
ws.onopen = function()
{
debug("onopen() was called.");
};
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");
doTest(opcode + 1);
};
ws.onerror = function(errorEvent)
{
testPassed("onerror() was called");
};
}
doTest(0);
</script>
</body>
</html>