mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-05 15:28:39 +09:00
import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo
This commit is contained in:
commit
dcd9973243
150858 changed files with 23884658 additions and 0 deletions
106
testing/web-platform/tests/webstorage/event_basic.js
Normal file
106
testing/web-platform/tests/webstorage/event_basic.js
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
testStorages(function(storageString) {
|
||||
async_test(function(t) {
|
||||
assert_true(storageString in window, storageString + " exist");
|
||||
var storage = window[storageString];
|
||||
t.add_cleanup(function() { storage.clear() });
|
||||
|
||||
clearStorage(storageString, t.step_func(step1));
|
||||
assert_equals(storage.length, 0, "storage.length");
|
||||
|
||||
function step1(msg)
|
||||
{
|
||||
storage.setItem('FOO', 'BAR');
|
||||
|
||||
runAfterNStorageEvents(t.step_func(step2), 1);
|
||||
}
|
||||
|
||||
function step2(msg)
|
||||
{
|
||||
if(msg != undefined) {
|
||||
assert_unreached(msg);
|
||||
}
|
||||
assert_equals(storageEventList.length, 1);
|
||||
assert_equals(storageEventList[0].key, "FOO");
|
||||
assert_equals(storageEventList[0].oldValue, null);
|
||||
assert_equals(storageEventList[0].newValue, "BAR");
|
||||
|
||||
storage.setItem('FU', 'BAR');
|
||||
storage.setItem('a', '1');
|
||||
storage.setItem('b', '2');
|
||||
storage.setItem('b', '3');
|
||||
|
||||
runAfterNStorageEvents(t.step_func(step3), 5);
|
||||
}
|
||||
|
||||
function step3(msg)
|
||||
{
|
||||
if(msg != undefined) {
|
||||
assert_unreached(msg);
|
||||
}
|
||||
assert_equals(storageEventList.length, 5);
|
||||
assert_equals(storageEventList[1].key, "FU");
|
||||
assert_equals(storageEventList[1].oldValue, null);
|
||||
assert_equals(storageEventList[1].newValue, "BAR");
|
||||
|
||||
assert_equals(storageEventList[2].key, "a");
|
||||
assert_equals(storageEventList[2].oldValue, null);
|
||||
assert_equals(storageEventList[2].newValue, "1");
|
||||
|
||||
assert_equals(storageEventList[3].key, "b");
|
||||
assert_equals(storageEventList[3].oldValue, null);
|
||||
assert_equals(storageEventList[3].newValue, "2");
|
||||
|
||||
assert_equals(storageEventList[4].key, "b");
|
||||
assert_equals(storageEventList[4].oldValue, "2");
|
||||
assert_equals(storageEventList[4].newValue, "3");
|
||||
|
||||
storage.removeItem('FOO');
|
||||
|
||||
runAfterNStorageEvents(t.step_func(step4), 6);
|
||||
}
|
||||
|
||||
function step4(msg)
|
||||
{
|
||||
if(msg != undefined) {
|
||||
assert_unreached(msg);
|
||||
}
|
||||
assert_equals(storageEventList.length, 6);
|
||||
assert_equals(storageEventList[5].key, "FOO");
|
||||
assert_equals(storageEventList[5].oldValue, "BAR");
|
||||
assert_equals(storageEventList[5].newValue, null);
|
||||
|
||||
storage.removeItem('FU');
|
||||
|
||||
runAfterNStorageEvents(t.step_func(step5), 7);
|
||||
}
|
||||
|
||||
function step5(msg)
|
||||
{
|
||||
if(msg != undefined) {
|
||||
assert_unreached(msg);
|
||||
}
|
||||
assert_equals(storageEventList.length, 7);
|
||||
assert_equals(storageEventList[6].key, "FU");
|
||||
assert_equals(storageEventList[6].oldValue, "BAR");
|
||||
assert_equals(storageEventList[6].newValue, null);
|
||||
|
||||
storage.clear();
|
||||
|
||||
runAfterNStorageEvents(t.step_func(step6), 8);
|
||||
}
|
||||
|
||||
function step6(msg)
|
||||
{
|
||||
if(msg != undefined) {
|
||||
assert_unreached(msg);
|
||||
}
|
||||
assert_equals(storageEventList.length, 8);
|
||||
assert_equals(storageEventList[7].key, null);
|
||||
assert_equals(storageEventList[7].oldValue, null);
|
||||
assert_equals(storageEventList[7].newValue, null);
|
||||
|
||||
t.done();
|
||||
}
|
||||
|
||||
}, storageString + " mutations fire StorageEvents that are caught by the event listener set via window.onstorage.");
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue