diff options
Diffstat (limited to '')
-rw-r--r-- | dom/websocket/tests/websocket_helpers.js | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/dom/websocket/tests/websocket_helpers.js b/dom/websocket/tests/websocket_helpers.js new file mode 100644 index 0000000000..6b988b2fa4 --- /dev/null +++ b/dom/websocket/tests/websocket_helpers.js @@ -0,0 +1,69 @@ +var current_test = 0; + +function shouldNotOpen(e) { + var ws = e.target; + ok(false, "onopen shouldn't be called on test " + ws._testNumber + "!"); +} + +function shouldCloseCleanly(e) { + var ws = e.target; + ok( + e.wasClean, + "the ws connection in test " + ws._testNumber + " should be closed cleanly" + ); +} + +function shouldCloseNotCleanly(e) { + var ws = e.target; + ok( + !e.wasClean, + "the ws connection in test " + + ws._testNumber + + " shouldn't be closed cleanly" + ); +} + +function ignoreError(e) {} + +function CreateTestWS(ws_location, ws_protocol) { + var ws; + + if (ws_protocol == undefined) { + ws = new WebSocket(ws_location); + } else { + ws = new WebSocket(ws_location, ws_protocol); + } + + ws._testNumber = current_test; + ok(true, "Created websocket for test " + ws._testNumber + "\n"); + + ws.onerror = function (e) { + ok(false, "onerror called on test " + e.target._testNumber + "!"); + }; + + return ws; +} + +function forcegc() { + SpecialPowers.forceGC(); + SpecialPowers.gc(); +} + +function feedback() { + $("feedback").innerHTML = + "executing test: " + (current_test + 1) + " of " + tests.length + " tests."; +} + +function finish() { + SimpleTest.finish(); +} + +function doTest() { + if (current_test >= tests.length) { + finish(); + return; + } + + feedback(); + tests[current_test++]().then(doTest); +} |