40 lines
1.0 KiB
Plaintext
40 lines
1.0 KiB
Plaintext
Try to call db.close() after upgradeneeded but before the corresponding success event fires
|
|
|
|
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;
|
|
|
|
indexedDB.deleteDatabase(dbname)
|
|
|
|
deleteSuccess():
|
|
request = indexedDB.open(dbname, 7)
|
|
|
|
upgradeNeeded():
|
|
db = event.target.result
|
|
PASS event.newVersion is 7
|
|
db.createObjectStore('objectstore')
|
|
transaction = event.target.transaction
|
|
|
|
transactionComplete():
|
|
sawTransactionComplete = true
|
|
|
|
Now try and close the database after oncomplete but before onsuccess.
|
|
This will not happen in single process ports. In multi-process ports
|
|
it may and is fine; but flaky crashes would indicate a regression.
|
|
|
|
setTimeout(closeDB, 0)
|
|
|
|
checkFinished():
|
|
Not done yet...
|
|
|
|
checkFinished():
|
|
PASS didCallCloseDB is true
|
|
PASS sawTransactionComplete is true
|
|
PASS db.version is 7
|
|
PASS db.objectStoreNames.length is 1
|
|
PASS successfullyParsed is true
|
|
|
|
TEST COMPLETE
|
|
|