blob: 2729a3bed3c467482f82306ad49780b8a9d36d2b [file] [log] [blame]
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.");
});