Source code

Revision control

Copy as Markdown

Other Tools

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;
}
}