diff options
Diffstat (limited to 'dom/tests/mochitest/storageevent/frameLocalStorageSlaveEqual.html')
-rw-r--r-- | dom/tests/mochitest/storageevent/frameLocalStorageSlaveEqual.html | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/dom/tests/mochitest/storageevent/frameLocalStorageSlaveEqual.html b/dom/tests/mochitest/storageevent/frameLocalStorageSlaveEqual.html new file mode 100644 index 0000000000..ad3738bed2 --- /dev/null +++ b/dom/tests/mochitest/storageevent/frameLocalStorageSlaveEqual.html @@ -0,0 +1,55 @@ +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<title>slave for storage event propagation</title> + +<script type="text/javascript" src="interOriginFrame.js"></script> +<script type="text/javascript"> + +var currentStep = 2; + +var events = []; + +window.addEventListener("storage", function(event) +{ + events.push(event); +}); + +function doStep() +{ + function checkEvent(expectedKey, expectedOldValue, expectedNewValue) + { + var event = events.shift(); + is(event.key, expectedKey, "key name check"); + is(event.oldValue, expectedOldValue, "old value check"); + is(event.newValue, expectedNewValue, "new value check"); + is(event.url, "http://example.com/tests/dom/tests/mochitest/storageevent/frameLocalStorageMaster.html"); + ok(event.storageArea); + } + + switch (currentStep) + { + case 10: + is(events.length, 5, "Expected 5 events"); + checkEvent("X", null, "1"); + checkEvent("X", "1", "2"); + checkEvent("X", "2", null); + checkEvent("X", null, "2"); + checkEvent(null, null, null); + break; + } + + // Increase by two to distinguish each test step order + // in both master doStep and slave doStep functions. + ++currentStep; + ++currentStep; + + return true; +} + +</script> + +</head> + +<body onload="postMsg('frame loaded', 'http://mochi.test:8888');"> +</body> +</html> |