blob: 17594fa79c5101554b063e75a2f5dbbcef09e217 [file] [log] [blame]
[Worker] Test IndexedDB workers, recursion, and transaction termination.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
Starting worker: resources/transaction-complete-workers.js
[Worker] indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
[Worker]
[Worker] indexedDB.deleteDatabase(dbname)
[Worker] indexedDB.open(dbname)
[Worker]
[Worker] prepareDatabase():
[Worker] db.createObjectStore('store')
[Worker]
[Worker] createTransaction():
[Worker] transaction = db.transaction('store')
[Worker] store = transaction.objectStore('store')
PASS [Worker] Transaction completed
[Worker] Expecting exception from store.get(0)
PASS [Worker] Exception was thrown.
PASS [Worker] code is 0
PASS [Worker] ename is 'TransactionInactiveError'
[Worker] Exception message: Failed to execute 'get' on 'IDBObjectStore': The transaction is inactive or finished.
[Worker]
[Worker] recursionTest():
[Worker] transaction = db.transaction('store')
[Worker] store = transaction.objectStore('store')
[Worker] store.get(0)
PASS [Worker] transaction is active
[Worker] recursion depth: 1
[Worker] store.get(0)
PASS [Worker] transaction is still active
[Worker] recursion depth: 2
[Worker] store.get(0)
PASS [Worker] transaction is still active
[Worker] recursion depth: 3
[Worker] store.get(0)
PASS [Worker] transaction is still active
[Worker] recursion depth: 3
[Worker] store.get(0)
PASS [Worker] transaction is still active
[Worker] recursion depth: 2
[Worker] store.get(0)
PASS [Worker] transaction is still active
[Worker] recursion depth: 1
[Worker] store.get(0)
PASS [Worker] transaction is still active
PASS [Worker] transaction completed
[Worker] Expecting exception from store.get(0)
PASS [Worker] Exception was thrown.
PASS [Worker] code is 0
PASS [Worker] ename is 'TransactionInactiveError'
[Worker] Exception message: Failed to execute 'get' on 'IDBObjectStore': The transaction is inactive or finished.
[Worker]
[Worker] trying a timeout callback:
[Worker] setTimeout(timeoutTest, 0)
[Worker]
[Worker] timeoutTest():
[Worker] transaction = db.transaction('store')
[Worker] store = transaction.objectStore('store')
PASS [Worker] transaction started in setTimeout() callback completed
[Worker] Expecting exception from store.get(0)
PASS [Worker] Exception was thrown.
PASS [Worker] code is 0
PASS [Worker] ename is 'TransactionInactiveError'
[Worker] Exception message: Failed to execute 'get' on 'IDBObjectStore': The transaction is inactive or finished.
[Worker]
[Worker] errorTest():
[Worker] self.old_onerror = self.onerror
[Worker] self.onerror = errorHandler
[Worker]
[Worker] errorHandler():
[Worker] self.onerror = self.old_onerror
[Worker] transaction = db.transaction('store')
[Worker] store = transaction.objectStore('store')
Got expected error from worker, ignoring
event.preventDefault()
PASS [Worker] Transaction completed
[Worker] Expecting exception from store.get(0)
PASS [Worker] Exception was thrown.
PASS [Worker] code is 0
PASS [Worker] ename is 'TransactionInactiveError'
[Worker] Exception message: Failed to execute 'get' on 'IDBObjectStore': The transaction is inactive or finished.
PASS successfullyParsed is true
TEST COMPLETE