Changeset 86408 in webkit
- Timestamp:
- May 12, 2011 6:52:42 PM (13 years ago)
- Location:
- trunk/LayoutTests
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r86402 r86408 1 2011-05-12 David Grogan <dgrogan@chromium.org> 2 3 Reviewed by Darin Adler. 4 5 make layout tests in storage/domstorage/events more deterministic 6 https://bugs.webkit.org/show_bug.cgi?id=60299 7 8 Instead of counting the number of storage events fired between two 9 setTimeout(0) events, specify the number of events to wait for and wait up to 10 1 second for them. 11 12 * storage/domstorage/events/resources/eventTestHarness.js: 13 (runAfterNStorageEvents): 14 (countStorageEvents.onTimeout): 15 (countStorageEvents): 16 (testStorages.allDone): 17 * storage/domstorage/events/script-tests/basic-body-attribute.js: 18 (step1): 19 (step2): 20 (step3): 21 (step4): 22 (step5): 23 * storage/domstorage/events/script-tests/basic-setattribute.js: 24 (step1): 25 (step2): 26 (step3): 27 (step4): 28 (step5): 29 * storage/domstorage/events/script-tests/basic.js: 30 (test): 31 (step1): 32 (step2): 33 (step3): 34 (step4): 35 (step5): 36 * storage/domstorage/events/script-tests/case-sensitive.js: 37 (test): 38 (step1): 39 (step2): 40 * storage/domstorage/events/script-tests/documentURI.js: 41 (test): 42 (step1): 43 (step2): 44 1 45 2011-05-12 Andrew Wilson <atwilson@chromium.org> 2 46 -
trunk/LayoutTests/storage/domstorage/events/resources/eventTestHarness.js
r53840 r86408 14 14 } 15 15 16 function runAfterStorageEvents(callback) { 17 var currentCount = storageEventList.length; 18 function onTimeout() { 19 if (currentCount != storageEventList.length) 20 runAfterStorageEvents(callback); 21 else 16 function runAfterNStorageEvents(callback, expectedNumEvents) 17 { 18 countStorageEvents(callback, expectedNumEvents, 0) 19 } 20 21 function countStorageEvents(callback, expectedNumEvents, times) 22 { 23 function onTimeout() 24 { 25 var currentCount = storageEventList.length; 26 if (currentCount == expectedNumEvents) 22 27 callback(); 28 else if (currentCount > expectedNumEvents) { 29 testFailed("got at least " + currentCount + ", expected only " + expectedNumEvents + " events"); 30 callback(); 31 } else if (times > 50) { 32 testFailed("Timeout: only got " + currentCount + ", expected " + expectedNumEvents + " events"); 33 callback(); 34 } else 35 countStorageEvents(callback, expectedNumEvents, times+1) 23 36 } 24 setTimeout(onTimeout, 0);37 setTimeout(onTimeout, 20); 25 38 } 26 39 … … 35 48 isSuccessfullyParsed(); 36 49 debug(""); 50 localStorage.clear(); 51 sessionStorage.clear(); 37 52 if (window.layoutTestController) 38 53 layoutTestController.notifyDone() -
trunk/LayoutTests/storage/domstorage/events/script-tests/basic-body-attribute.js
r53840 r86408 25 25 evalAndLog("storage.setItem('FOO', 'BAR')"); 26 26 27 runAfter StorageEvents(step2);27 runAfterNStorageEvents(step2, 1); 28 28 } 29 29 … … 39 39 evalAndLog("storage.setItem('b', '3')"); 40 40 41 runAfter StorageEvents(step3);41 runAfterNStorageEvents(step3, 5); 42 42 } 43 43 … … 59 59 evalAndLog("storage.removeItem('FOO')"); 60 60 61 runAfter StorageEvents(step4);61 runAfterNStorageEvents(step4, 6); 62 62 } 63 63 … … 70 70 evalAndLog("storage.removeItem('FU')"); 71 71 72 runAfter StorageEvents(step5);72 runAfterNStorageEvents(step5, 7); 73 73 } 74 74 … … 81 81 evalAndLog("storage.clear()"); 82 82 83 runAfter StorageEvents(step6);83 runAfterNStorageEvents(step6, 8); 84 84 } 85 85 -
trunk/LayoutTests/storage/domstorage/events/script-tests/basic-setattribute.js
r53840 r86408 25 25 evalAndLog("storage.setItem('FOO', 'BAR')"); 26 26 27 runAfter StorageEvents(step2);27 runAfterNStorageEvents(step2, 1); 28 28 } 29 29 … … 39 39 evalAndLog("storage.setItem('b', '3')"); 40 40 41 runAfter StorageEvents(step3);41 runAfterNStorageEvents(step3, 5); 42 42 } 43 43 … … 59 59 evalAndLog("storage.removeItem('FOO')"); 60 60 61 runAfter StorageEvents(step4);61 runAfterNStorageEvents(step4, 6); 62 62 } 63 63 … … 70 70 evalAndLog("storage.removeItem('FU')"); 71 71 72 runAfter StorageEvents(step5);72 runAfterNStorageEvents(step5, 7); 73 73 } 74 74 … … 81 81 evalAndLog("storage.clear()"); 82 82 83 runAfter StorageEvents(step6);83 runAfterNStorageEvents(step6, 8); 84 84 } 85 85 -
trunk/LayoutTests/storage/domstorage/events/script-tests/basic.js
r53840 r86408 12 12 debug("Testing " + storageString); 13 13 14 storageEventList = new Array(); 14 15 evalAndLog("storage.clear()"); 15 16 shouldBe("storage.length", "0"); 16 17 17 runAfter StorageEvents(step1);18 runAfterNStorageEvents(step1, 0); 18 19 } 19 20 … … 24 25 evalAndLog("storage.setItem('FOO', 'BAR')"); 25 26 26 runAfter StorageEvents(step2);27 runAfterNStorageEvents(step2, 1); 27 28 } 28 29 … … 38 39 evalAndLog("storage.setItem('b', '3')"); 39 40 40 runAfter StorageEvents(step3);41 runAfterNStorageEvents(step3, 5); 41 42 } 42 43 … … 58 59 evalAndLog("storage.removeItem('FOO')"); 59 60 60 runAfter StorageEvents(step4);61 runAfterNStorageEvents(step4, 6); 61 62 } 62 63 … … 69 70 evalAndLog("storage.removeItem('FU')"); 70 71 71 runAfter StorageEvents(step5);72 runAfterNStorageEvents(step5, 7); 72 73 } 73 74 … … 80 81 evalAndLog("storage.clear()"); 81 82 82 runAfter StorageEvents(step6);83 runAfterNStorageEvents(step6, 8); 83 84 } 84 85 -
trunk/LayoutTests/storage/domstorage/events/script-tests/case-sensitive.js
r53840 r86408 12 12 debug("Testing " + storageString); 13 13 14 storageEventList = new Array(); 14 15 evalAndLog("storage.clear()"); 15 16 shouldBe("storage.length", "0"); … … 19 20 evalAndLog("storage.foo = 'test'"); 20 21 21 runAfter StorageEvents(step1);22 runAfterNStorageEvents(step1, 1); 22 23 } 23 24 … … 28 29 evalAndLog("storage.foo = 'test'"); 29 30 30 runAfter StorageEvents(step2);31 runAfterNStorageEvents(step2, 0); 31 32 } 32 33 … … 36 37 evalAndLog("storage.foo = 'TEST'"); 37 38 38 runAfter StorageEvents(step3);39 runAfterNStorageEvents(step3, 1); 39 40 } 40 41 -
trunk/LayoutTests/storage/domstorage/events/script-tests/documentURI.js
r58571 r86408 12 12 debug("Testing " + storageString); 13 13 14 storageEventList = new Array(); 14 15 evalAndLog("storage.clear()"); 15 16 shouldBe("storage.length", "0"); 16 17 17 runAfter StorageEvents(step1);18 runAfterNStorageEvents(step1, 0); 18 19 } 19 20 … … 24 25 evalAndLog("storage.foo = '123'"); 25 26 26 runAfter StorageEvents(step2);27 runAfterNStorageEvents(step2, 1); 27 28 } 28 29 … … 37 38 evalAndLog("storage.foo = 'xyz'"); 38 39 39 runAfter StorageEvents(step3);40 runAfterNStorageEvents(step3, 2); 40 41 } 41 42
Note: See TracChangeset
for help on using the changeset viewer.