Test that a database is recreated correctly when an open-with-version call is queued behind a deleteDatabase call On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". dbname = "intversion-gated-on-delete.html" indexedDB.deleteDatabase(dbname) deleteSuccess(): request = indexedDB.open(dbname) request.onsuccess = firstSuccessCallback firstSuccessCallback(): connection1 = event.target.result connection1.onversionchange = connection1VersionChangeCallback request = indexedDB.open(dbname) request.onsuccess = secondSuccessCallback request = indexedDB.deleteDatabase(dbname) request.onblocked = deleteDatabaseBlockedCallback request.onsuccess = deleteDatabaseSuccessCallback request = indexedDB.open(dbname, 1) request.onupgradeneeded = upgradeNeededCallback request.onsuccess = openWithVersionSuccessCallback secondSuccessCallback(): db = event.target.result db.onversionchange = connection2VersionChangeCallback connection1VersionChangeCallback(): PASS event.type is "versionchange" PASS event.oldVersion is 1 PASS event.newVersion is null connection2VersionChangeCallback(): PASS event.type is "versionchange" event.target.close() deleteDatabaseBlockedCallback(): connection1.close() deleteDatabaseSuccessCallback(): upgradeNeededCallback(): PASS event.newVersion is 1 PASS event.oldVersion is 0 openWithVersionSuccessCallback(): PASS event.target.result.objectStoreNames.length is 0 PASS successfullyParsed is true TEST COMPLETE