diff options
Diffstat (limited to 'dom/tests/mochitest/sessionstorage/interOriginTest.js')
-rw-r--r-- | dom/tests/mochitest/sessionstorage/interOriginTest.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/dom/tests/mochitest/sessionstorage/interOriginTest.js b/dom/tests/mochitest/sessionstorage/interOriginTest.js new file mode 100644 index 0000000000..4d2654e5dc --- /dev/null +++ b/dom/tests/mochitest/sessionstorage/interOriginTest.js @@ -0,0 +1,43 @@ +var slaveLoadsPending = 1; + +var slaveOrigin = ""; +var slave = null; + +var failureRegExp = new RegExp("^FAILURE"); +const slavePath = "/tests/dom/tests/mochitest/sessionstorage/"; + +window.addEventListener("message", onMessageReceived); + +function onMessageReceived(event) { + //alert("master got event: "+event.data); + switch (event.data) { + // Indication of the frame onload event + case "frame loaded": + if (--slaveLoadsPending) { + break; + } + + // Indication of successfully finished step of a test + // Just fall through... + case "perf": + // We called doStep before the frame was load + if (event.data == "perf") { + doStep(); + } + + slave.postMessage("step", slaveOrigin); + break; + + // Indication of all test parts finish (from any of the frames) + case "done": + sessionStorage.clear(); + slaveLoadsPending = 1; + doNextTest(); + break; + + // Any other message indicates error or succes message of a test + default: + SimpleTest.ok(!event.data.match(failureRegExp), event.data); + break; + } +} |