1 description("Verify that storage events fire even when only the case of the value changes."); 2 3 function test(storageString, callback) 4 { 5 window.completionCallback = callback; 6 window.storage = eval(storageString); 7 if (!storage) { 8 testFailed(storageString + " DOES NOT exist"); 9 return; 10 } 11 12 debug("Testing " + storageString); 13 14 evalAndLog("storage.clear()"); 15 shouldBe("storage.length", "0"); 16 17 debug(""); 18 debug("Verify storage events are case sensitive"); 19 evalAndLog("storage.foo = 'test'"); 20 21 runAfterStorageEvents(step1); 22 } 23 24 function step1() 25 { 26 debug("Reset storage event list"); 27 evalAndLog("storageEventList = new Array()"); 28 evalAndLog("storage.foo = 'test'"); 29 30 runAfterStorageEvents(step2); 31 } 32 33 function step2() 34 { 35 shouldBe("storageEventList.length", "0"); 36 evalAndLog("storage.foo = 'TEST'"); 37 38 runAfterStorageEvents(step3); 39 } 40 41 function step3() 42 { 43 shouldBe("storageEventList.length", "1"); 44 45 completionCallback(); 46 } 47 48 testStorages(test); 49 50 var successfullyParsed = true; 51