| Index: LayoutTests/storage/indexeddb/exceptions-expected.txt
|
| diff --git a/LayoutTests/storage/indexeddb/exceptions-expected.txt b/LayoutTests/storage/indexeddb/exceptions-expected.txt
|
| index 9993f58ada7dda40ba27fbfbc00bcdaf6c090b3a..f5e29d83d897f65e29a411419de4a6fdc1de4ff7 100644
|
| --- a/LayoutTests/storage/indexeddb/exceptions-expected.txt
|
| +++ b/LayoutTests/storage/indexeddb/exceptions-expected.txt
|
| @@ -33,7 +33,7 @@ Expecting exception from request.error
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_STATE_ERR
|
| PASS ename is 'InvalidStateError'
|
| -Exception message: The request has not finished.
|
| +Exception message: Failed to read the 'error' property from 'IDBRequest': The request has not finished.
|
|
|
| IDBRequest.result
|
| When the done flag is false, getting this property must throw a DOMException of type InvalidStateError.
|
| @@ -41,7 +41,7 @@ Expecting exception from request.result
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_STATE_ERR
|
| PASS ename is 'InvalidStateError'
|
| -Exception message: The request has not finished.
|
| +Exception message: Failed to read the 'result' property from 'IDBRequest': The request has not finished.
|
|
|
| 3.2.3 Opening a database
|
|
|
| @@ -51,7 +51,7 @@ Expecting exception from indexedDB.cmp(null, 0)
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'cmp' on 'IDBFactory': The parameter is not a valid key.
|
| db.close()
|
|
|
| 3.2.4 Database
|
| @@ -63,24 +63,24 @@ Expecting exception from db.createObjectStore('store')
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'ConstraintError'
|
| -Exception message: An object store with the specified name already exists.
|
| +Exception message: Failed to execute 'createObjectStore' on 'IDBDatabase': An object store with the specified name already exists.
|
| If keyPath is not a valid key path then a DOMException of type SyntaxError must be thrown.
|
| Expecting exception from db.createObjectStore('fail', {keyPath: '-invalid-'})
|
| PASS Exception was thrown.
|
| PASS code is DOMException.SYNTAX_ERR
|
| PASS ename is 'SyntaxError'
|
| -Exception message: The keyPath option is not a valid key path.
|
| +Exception message: Failed to execute 'createObjectStore' on 'IDBDatabase': The keyPath option is not a valid key path.
|
| If the optionalParameters parameter is specified, and autoIncrement is set to true, and the keyPath parameter is specified to the empty string, or specified to an Array, this function must throw a InvalidAccessError exception.
|
| Expecting exception from db.createObjectStore('fail', {autoIncrement: true, keyPath: ''})
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_ACCESS_ERR
|
| PASS ename is 'InvalidAccessError'
|
| -Exception message: The autoIncrement option was set but the keyPath option was empty or an array.
|
| +Exception message: Failed to execute 'createObjectStore' on 'IDBDatabase': The autoIncrement option was set but the keyPath option was empty or an array.
|
| Expecting exception from db.createObjectStore('fail', {autoIncrement: true, keyPath: ['a']})
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_ACCESS_ERR
|
| PASS ename is 'InvalidAccessError'
|
| -Exception message: The autoIncrement option was set but the keyPath option was empty or an array.
|
| +Exception message: Failed to execute 'createObjectStore' on 'IDBDatabase': The autoIncrement option was set but the keyPath option was empty or an array.
|
|
|
| IDBDatabase.deleteObjectStore()
|
| There is no object store with the given name, compared in a case-sensitive manner, in the connected database.
|
| @@ -88,7 +88,7 @@ Expecting exception from db.deleteObjectStore('no-such-store')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.NOT_FOUND_ERR
|
| PASS ename is 'NotFoundError'
|
| -Exception message: The specified object store was not found.
|
| +Exception message: Failed to execute 'deleteObjectStore' on 'IDBDatabase': The specified object store was not found.
|
|
|
| IDBDatabase.transaction()
|
| If this method is called on IDBDatabase object for which a "versionchange" transaction is still running, a InvalidStateError exception must be thrown.
|
| @@ -96,13 +96,13 @@ Expecting exception from db.transaction('store')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_STATE_ERR
|
| PASS ename is 'InvalidStateError'
|
| -Exception message: A version change transaction is running.
|
| +Exception message: Failed to execute 'transaction' on 'IDBDatabase': A version change transaction is running.
|
| One of the names provided in the storeNames argument doesn't exist in this database.
|
| Expecting exception from db.transaction('no-such-store')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.NOT_FOUND_ERR
|
| PASS ename is 'NotFoundError'
|
| -Exception message: One of the specified object stores was not found.
|
| +Exception message: Failed to execute 'transaction' on 'IDBDatabase': One of the specified object stores was not found.
|
| The value for the mode parameter is invalid.
|
| Expecting TypeError exception from db.transaction('store', 'invalid-mode')
|
| PASS Exception was thrown.
|
| @@ -112,7 +112,7 @@ Expecting exception from db.transaction([])
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_ACCESS_ERR
|
| PASS ename is 'InvalidAccessError'
|
| -Exception message: The storeNames parameter was empty.
|
| +Exception message: Failed to execute 'transaction' on 'IDBDatabase': The storeNames parameter was empty.
|
|
|
| One more IDBDatabase.createObjectStore() test:
|
| If this function is called from outside a "versionchange" transaction callback ... the implementation must throw a DOMException of type InvalidStateError.
|
| @@ -120,7 +120,7 @@ Expecting exception from db.createObjectStore('fail')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_STATE_ERR
|
| PASS ename is 'InvalidStateError'
|
| -Exception message: The database is not running a version change transaction.
|
| +Exception message: Failed to execute 'createObjectStore' on 'IDBDatabase': The database is not running a version change transaction.
|
|
|
| One more IDBDatabase.deleteObjectStore() test:
|
| If this function is called from outside a "versionchange" transaction callback ... the implementation must throw a DOMException of type InvalidStateError.
|
| @@ -128,7 +128,7 @@ Expecting exception from db.deleteObjectStore('fail')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_STATE_ERR
|
| PASS ename is 'InvalidStateError'
|
| -Exception message: The database is not running a version change transaction.
|
| +Exception message: Failed to execute 'deleteObjectStore' on 'IDBDatabase': The database is not running a version change transaction.
|
|
|
| Prepare an object store and index from an inactive transaction for later use.
|
| finishedTransaction = inactiveTransaction = db.transaction('store')
|
| @@ -155,7 +155,7 @@ Expecting exception from storeFromInactiveTransaction.add(0, 0)
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'add' on 'IDBObjectStore': The transaction has finished.
|
| The data being stored could not be cloned by the internal structured cloning algorithm.
|
| Expecting exception from store.add(self, 0)
|
| PASS Exception was thrown.
|
| @@ -174,7 +174,7 @@ Expecting exception from storeFromInactiveTransaction.clear()
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'clear' on 'IDBObjectStore': The transaction has finished.
|
|
|
| IDBObjectStore.count()
|
| If the optional key parameter is not a valid key or a key range, this method throws a DOMException of type DataError.
|
| @@ -182,13 +182,13 @@ Expecting exception from store.count({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'count' on 'IDBObjectStore': The parameter is not a valid key.
|
| The transaction this IDBObjectStore belongs to is not active.
|
| Expecting exception from storeFromInactiveTransaction.count()
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'count' on 'IDBObjectStore': The transaction has finished.
|
|
|
| IDBObjectStore.delete()
|
| This method throws a DOMException of type ReadOnlyError if the transaction which this IDBObjectStore belongs to is has its mode set to "readonly".
|
| @@ -202,13 +202,13 @@ Expecting exception from store.delete({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'delete' on 'IDBObjectStore': The parameter is not a valid key.
|
| The transaction this IDBObjectStore belongs to is not active.
|
| Expecting exception from storeFromInactiveTransaction.add(0, 0)
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'add' on 'IDBObjectStore': The transaction has finished.
|
|
|
| IDBObjectStore.get()
|
| If the key parameter is not a valid key or a key range, this method throws a DOMException of type DataError.
|
| @@ -216,13 +216,13 @@ Expecting exception from store.get({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'get' on 'IDBObjectStore': The parameter is not a valid key.
|
| The transaction this IDBObjectStore belongs to is not active.
|
| Expecting exception from storeFromInactiveTransaction.get(0)
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'get' on 'IDBObjectStore': The transaction has finished.
|
|
|
| IDBObjectStore.index()
|
| There is no index with the given name, compared in a case-sensitive manner, in the connected database.
|
| @@ -230,13 +230,13 @@ Expecting exception from store.index('no-such-index')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.NOT_FOUND_ERR
|
| PASS ename is 'NotFoundError'
|
| -Exception message: The specified index was not found.
|
| +Exception message: Failed to execute 'index' on 'IDBObjectStore': The specified index was not found.
|
| Occurs if a request is made on a source object that has been deleted or removed, or if the transaction the object store belongs to has finished.
|
| Expecting exception from storeFromInactiveTransaction.index('index')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_STATE_ERR
|
| PASS ename is 'InvalidStateError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'index' on 'IDBObjectStore': The transaction has finished.
|
|
|
| IDBObjectStore.openCursor()
|
| If the range parameter is specified but is not a valid key or a key range, this method throws a DOMException of type DataError.
|
| @@ -244,13 +244,13 @@ Expecting exception from store.openCursor({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'openCursor' on 'IDBObjectStore': The parameter is not a valid key.
|
| The transaction this IDBObjectStore belongs to is not active.
|
| Expecting exception from storeFromInactiveTransaction.openCursor()
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'openCursor' on 'IDBObjectStore': The transaction has finished.
|
| The value for the direction parameter is invalid.
|
| Expecting TypeError exception from store.openCursor(0, 'invalid-direction')
|
| PASS Exception was thrown.
|
| @@ -262,13 +262,13 @@ Expecting exception from store.openKeyCursor({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'openKeyCursor' on 'IDBObjectStore': The parameter is not a valid key.
|
| The transaction this IDBObjectStore belongs to is not active.
|
| Expecting exception from storeFromInactiveTransaction.openKeyCursor()
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'openKeyCursor' on 'IDBObjectStore': The transaction has finished.
|
| The value for the direction parameter is invalid.
|
| Expecting TypeError exception from store.openKeyCursor(0, 'invalid-direction')
|
| PASS Exception was thrown.
|
| @@ -286,7 +286,7 @@ Expecting exception from storeFromInactiveTransaction.put(0, 0)
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'put' on 'IDBObjectStore': The transaction has finished.
|
| The data being stored could not be cloned by the internal structured cloning algorithm.
|
| Expecting exception from store.put(self, 0)
|
| PASS Exception was thrown.
|
| @@ -309,19 +309,19 @@ Expecting exception from store.createIndex('index', 'keyPath')
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'ConstraintError'
|
| -Exception message: An index with the specified name already exists.
|
| +Exception message: Failed to execute 'createIndex' on 'IDBObjectStore': An index with the specified name already exists.
|
| If keyPath is not a valid key path then a DOMException of type SyntaxError must be thrown.
|
| Expecting exception from store.createIndex('fail', '-invalid-')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.SYNTAX_ERR
|
| PASS ename is 'SyntaxError'
|
| -Exception message: The keyPath argument contains an invalid key path.
|
| +Exception message: Failed to execute 'createIndex' on 'IDBObjectStore': The keyPath argument contains an invalid key path.
|
| If keyPath is an Array and the multiEntry property in the optionalParameters is true, then a DOMException of type InvalidAccessError must be thrown.
|
| Expecting exception from store.createIndex('fail', ['a'], {multiEntry: true})
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_ACCESS_ERR
|
| PASS ename is 'InvalidAccessError'
|
| -Exception message: The keyPath argument was an array and the multiEntry option is true.
|
| +Exception message: Failed to execute 'createIndex' on 'IDBObjectStore': The keyPath argument was an array and the multiEntry option is true.
|
|
|
| IDBObjectStore.deleteIndex()
|
| There is no index with the given name, compared in a case-sensitive manner, in the connected database.
|
| @@ -329,7 +329,7 @@ Expecting exception from store.deleteIndex('no-such-index')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.NOT_FOUND_ERR
|
| PASS ename is 'NotFoundError'
|
| -Exception message: The specified index was not found.
|
| +Exception message: Failed to execute 'deleteIndex' on 'IDBObjectStore': The specified index was not found.
|
|
|
| One more IDBObjectStore.createIndex() test:
|
| If this function is called from outside a "versionchange" transaction callback ... the implementation must throw a DOMException of type InvalidStateError.
|
| @@ -337,7 +337,7 @@ Expecting exception from db.transaction('store').objectStore('store').createInde
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_STATE_ERR
|
| PASS ename is 'InvalidStateError'
|
| -Exception message: The database is not running a version change transaction.
|
| +Exception message: Failed to execute 'createIndex' on 'IDBObjectStore': The database is not running a version change transaction.
|
|
|
| One more IDBObjectStore.deleteIndex() test:
|
| If this function is called from outside a "versionchange" transaction callback ... the implementation must throw a DOMException of type InvalidStateError.
|
| @@ -345,7 +345,7 @@ Expecting exception from db.transaction('store').objectStore('store').deleteInde
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_STATE_ERR
|
| PASS ename is 'InvalidStateError'
|
| -Exception message: The database is not running a version change transaction.
|
| +Exception message: Failed to execute 'deleteIndex' on 'IDBObjectStore': The database is not running a version change transaction.
|
|
|
| 3.2.6 Index
|
| indexFromReadOnlyTransaction = db.transaction('store', 'readonly').objectStore('store').index('index')
|
| @@ -357,13 +357,13 @@ Expecting exception from index.count({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'count' on 'IDBIndex': The parameter is not a valid key.
|
| The transaction this IDBIndex belongs to is not active.
|
| Expecting exception from indexFromInactiveTransaction.count()
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'count' on 'IDBIndex': The transaction has finished.
|
|
|
| IDBIndex.get()
|
| If the key parameter is not a valid key or a key range, this method throws a DOMException of type DataError.
|
| @@ -371,13 +371,13 @@ Expecting exception from index.get({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'get' on 'IDBIndex': The parameter is not a valid key.
|
| The transaction this IDBIndex belongs to is not active.
|
| Expecting exception from indexFromInactiveTransaction.get(0)
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'get' on 'IDBIndex': The transaction has finished.
|
|
|
| IDBIndex.getKey()
|
| If the key parameter is not a valid key or a key range, this method throws a DOMException of type DataError.
|
| @@ -385,13 +385,13 @@ Expecting exception from index.getKey({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'getKey' on 'IDBIndex': The parameter is not a valid key.
|
| The transaction this IDBIndex belongs to is not active.
|
| Expecting exception from indexFromInactiveTransaction.getKey(0)
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'getKey' on 'IDBIndex': The transaction has finished.
|
|
|
| IDBIndex.openCursor()
|
| If the range parameter is specified but is not a valid key or a key range, this method throws a DOMException of type DataError.
|
| @@ -399,13 +399,13 @@ Expecting exception from index.openCursor({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'openCursor' on 'IDBIndex': The parameter is not a valid key.
|
| The transaction this IDBIndex belongs to is not active.
|
| Expecting exception from indexFromInactiveTransaction.openCursor()
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'openCursor' on 'IDBIndex': The transaction has finished.
|
| The value for the direction parameter is invalid.
|
| Expecting TypeError exception from index.openCursor(0, 'invalid-direction')
|
| PASS Exception was thrown.
|
| @@ -417,13 +417,13 @@ Expecting exception from index.openKeyCursor({})
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'DataError'
|
| -Exception message: The parameter is not a valid key.
|
| +Exception message: Failed to execute 'openKeyCursor' on 'IDBIndex': The parameter is not a valid key.
|
| The transaction this IDBIndex belongs to is not active.
|
| Expecting exception from indexFromInactiveTransaction.openKeyCursor()
|
| PASS Exception was thrown.
|
| PASS code is 0
|
| PASS ename is 'TransactionInactiveError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'openKeyCursor' on 'IDBIndex': The transaction has finished.
|
| The value for the direction parameter is invalid.
|
| Expecting TypeError exception from index.openKeyCursor(0, 'invalid-direction')
|
| PASS Exception was thrown.
|
| @@ -558,13 +558,13 @@ Expecting exception from finishedTransaction.abort()
|
| PASS Exception was thrown.
|
| PASS code is DOMException.INVALID_STATE_ERR
|
| PASS ename is 'InvalidStateError'
|
| -Exception message: The transaction has finished.
|
| +Exception message: Failed to execute 'abort' on 'IDBTransaction': The transaction has finished.
|
| If the requested object store is not in this transaction's scope.
|
| Expecting exception from db.transaction('store').objectStore('otherStore')
|
| PASS Exception was thrown.
|
| PASS code is DOMException.NOT_FOUND_ERR
|
| PASS ename is 'NotFoundError'
|
| -Exception message: The specified object store was not found.
|
| +Exception message: Failed to execute 'objectStore' on 'IDBTransaction': The specified object store was not found.
|
| PASS successfullyParsed is true
|
|
|
| TEST COMPLETE
|
|
|