| Test the deleteDatabase call and its interaction with open/setVersion |
| |
| On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". |
| |
| |
| indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB; |
| PASS indexedDB == null is false |
| |
| TEST: deleteDatabase blocked on open handles |
| window.dbname = 'test1'; window.ver = 1; window.steps = [] |
| 'h.open' |
| 'h.open.onsuccess' |
| 'deleteDatabase()' |
| 'h.onversionchange' |
| h closing, but not immediately |
| 'deleteDatabase().onblocked' |
| 'h.close' |
| 'deleteDatabase().onsuccess' |
| PASS window.steps.toString() is "h.open,h.open.onsuccess,deleteDatabase(),h.onversionchange,deleteDatabase().onblocked,h.close,deleteDatabase().onsuccess" |
| |
| TEST: deleteDatabase not blocked when handles close immediately |
| window.dbname = 'test2'; window.ver = 1; window.steps = [] |
| 'h.open' |
| 'h.open.onsuccess' |
| 'deleteDatabase()' |
| 'h.onversionchange' |
| h closing immediately |
| 'h.close' |
| 'deleteDatabase().onblocked' |
| 'deleteDatabase().onsuccess' |
| NOTE: Will FAIL with extra bogus deleteDatabase().onblocked step; https://bugs.webkit.org/show_bug.cgi?id=71130 |
| FAIL window.steps.toString() should be h.open,h.open.onsuccess,deleteDatabase(),h.onversionchange,h.close,deleteDatabase().onsuccess. Was h.open,h.open.onsuccess,deleteDatabase(),h.onversionchange,h.close,deleteDatabase().onblocked,deleteDatabase().onsuccess. |
| |
| TEST: deleteDatabase is delayed if a VERSION_CHANGE transaction is running |
| window.dbname = 'test3'; window.ver = 1; window.steps = [] |
| 'h.open' |
| 'h.open.onsuccess' |
| 'h.setVersion' |
| 'deleteDatabase()' |
| 'h.setVersion.onsuccess' |
| 'h.setVersion.transaction-complete' |
| 'h.onversionchange' |
| h closing, but not immediately |
| 'deleteDatabase().onblocked' |
| 'h.close' |
| 'deleteDatabase().onsuccess' |
| PASS window.steps.toString() is "h.open,h.open.onsuccess,h.setVersion,deleteDatabase(),h.setVersion.onsuccess,h.setVersion.transaction-complete,h.onversionchange,deleteDatabase().onblocked,h.close,deleteDatabase().onsuccess" |
| PASS successfullyParsed is true |
| |
| TEST COMPLETE |
| |