Test that a deleteDatabase called while handling an upgradeneeded event is queued and fires its events at the right time

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;

dbname = "intversion-delete-in-upgradeneeded.html"
indexedDB.deleteDatabase(dbname)

initiallyDeleted():
request = indexedDB.open(dbname, 1)

firstUpgradeNeeded():
PASS sawFirstUpgradeNeeded is false
sawFirstUpgradeNeeded = true
PASS event.oldVersion is 0
PASS event.newVersion is 1
PASS alreadyDeleted is false
deleteRequest = indexedDB.deleteDatabase(dbname)
request2.onsuccess = deleteFromUpgradeNeededSuccess

request.onsuccess():
PASS sawFirstUpgradeNeeded is true
db = event.target.result
PASS db.version is 1

versionChangeCallback():
FAIL event.oldVersion should be 1 (of type number). Was undefined (of type undefined).
FAIL event.newVersion should be null (of type object). Was undefined (of type undefined).
sawVersionChange = true
db.close()

deleteBlockedCallback():
This shouldn't happen but for the longstanding http://crbug.com/100123

deleteFromUpgradeNeededSuccess():
PASS sawVersionChange is true
PASS successfullyParsed is true

TEST COMPLETE

