88 lines
3.2 KiB
Plaintext
88 lines
3.2 KiB
Plaintext
[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
|
|
|