47 lines
1.3 KiB
JavaScript
47 lines
1.3 KiB
JavaScript
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(step0));
|
|
assert_equals(storage.length, 0, "storage.length");
|
|
|
|
function step0(msg)
|
|
{
|
|
storage.foo = "test";
|
|
runAfterNStorageEvents(t.step_func(step1), 1);
|
|
}
|
|
|
|
function step1(msg)
|
|
{
|
|
storageEventList = new Array();
|
|
storage.foo = "test";
|
|
|
|
runAfterNStorageEvents(t.step_func(step2), 0);
|
|
}
|
|
|
|
function step2(msg)
|
|
{
|
|
if(msg != undefined) {
|
|
assert_unreached(msg);
|
|
}
|
|
assert_equals(storageEventList.length, 0);
|
|
|
|
storage.foo = "TEST";
|
|
|
|
runAfterNStorageEvents(t.step_func(step3), 1);
|
|
}
|
|
|
|
function step3(msg)
|
|
{
|
|
if(msg != undefined) {
|
|
assert_unreached(msg);
|
|
}
|
|
assert_equals(storageEventList.length, 1);
|
|
|
|
t.done();
|
|
}
|
|
}, storageString + " storage events fire even when only the case of the value changes.");
|
|
});
|