Check that a page reloaded during an in-flight upgradeneeded event doesn't hang.

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;

dbname1 = dbname + '1'
dbname2 = dbname + '2'

deleteDatabase1():
indexedDB.deleteDatabase(dbname1)
In a multi process implementation this deleteDatabase may be blocked temporarily, so we don't check for either the presence or absence of a blocked event.

deleteDatabase2():
indexedDB.deleteDatabase(dbname2)

openDatabase1():
indexedDB.open(dbname1, 1)

openOnUpgradeNeeded1():

openOnSuccess1():
PASS isAfterReload() is true
PASS successfullyParsed is true

TEST COMPLETE

