Diff
Modified: trunk/LayoutTests/ChangeLog (193493 => 193494)
--- trunk/LayoutTests/ChangeLog 2015-12-05 01:14:03 UTC (rev 193493)
+++ trunk/LayoutTests/ChangeLog 2015-12-05 01:21:28 UTC (rev 193494)
@@ -1,3 +1,17 @@
+2015-12-04 Brady Eidson <[email protected]>
+
+ Modern IDB: Add some more custom exception messages, passing some more tests.
+ https://bugs.webkit.org/show_bug.cgi?id=151895
+
+ Reviewed by Alex Christensen.
+
+ * platform/mac-wk1/TestExpectations:
+ * storage/indexeddb/aborted-versionchange-closes-expected.txt:
+ * storage/indexeddb/cursor-continue-dir-expected.txt:
+ * storage/indexeddb/cursor-continue-expected.txt:
+ * storage/indexeddb/deleteIndex-expected.txt:
+ * storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt:
+
2015-12-04 Andy VanWagoner <[email protected]>
[INTL] Implement Number.prototype.toLocaleString in ECMA-402
Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (193493 => 193494)
--- trunk/LayoutTests/platform/mac-wk1/TestExpectations 2015-12-05 01:14:03 UTC (rev 193493)
+++ trunk/LayoutTests/platform/mac-wk1/TestExpectations 2015-12-05 01:21:28 UTC (rev 193494)
@@ -108,19 +108,16 @@
# IDB tests with text failures
storage/indexeddb/createIndex-after-failure.html [ Failure ]
-storage/indexeddb/cursor-continue-dir.html [ Failure ]
-storage/indexeddb/cursor-continue-validity.html [ Failure ]
storage/indexeddb/cursor-continue.html [ Failure ]
+storage/indexeddb/cursor-continue-validity.html [ Failure ]
storage/indexeddb/cursor-continueprimarykey.html [ Failure ]
storage/indexeddb/cursor-leak.html [ Failure ]
storage/indexeddb/cursor-request-cycle.html [ Failure ]
storage/indexeddb/database-basics.html [ Failure ]
-storage/indexeddb/database-close.html [ Failure ]
storage/indexeddb/database-deletepending-flag.html [ Failure ]
storage/indexeddb/database-wrapper.html [ Failure ]
storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html [ Failure ]
storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html [ Failure ]
-storage/indexeddb/deleteIndex.html [ Failure ]
storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange.html [ Failure ]
storage/indexeddb/deletedatabase-not-blocked.html [ Failure ]
storage/indexeddb/dont-commit-on-blocked.html [ Failure ]
Modified: trunk/LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt (193493 => 193494)
--- trunk/LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt 2015-12-05 01:14:03 UTC (rev 193493)
+++ trunk/LayoutTests/storage/indexeddb/aborted-versionchange-closes-expected.txt 2015-12-05 01:21:28 UTC (rev 193494)
@@ -32,7 +32,7 @@
PASS Exception was thrown.
PASS code is DOMException.INVALID_STATE_ERR
PASS ename is 'InvalidStateError'
-Exception message: An operation was called on an object on which it is not allowed or at a time when it is not allowed.
+Exception message: Failed to execute 'transaction' on 'IDBDatabase': The database connection is closing.
onOpenError():
PASS sawTransactionAbort is true
@@ -41,7 +41,7 @@
PASS Exception was thrown.
PASS code is DOMException.INVALID_STATE_ERR
PASS ename is 'InvalidStateError'
-Exception message: An operation was called on an object on which it is not allowed or at a time when it is not allowed.
+Exception message: Failed to execute 'transaction' on 'IDBDatabase': The database connection is closing.
PASS successfullyParsed is true
TEST COMPLETE
Modified: trunk/LayoutTests/storage/indexeddb/cursor-continue-dir-expected.txt (193493 => 193494)
--- trunk/LayoutTests/storage/indexeddb/cursor-continue-dir-expected.txt 2015-12-05 01:14:03 UTC (rev 193493)
+++ trunk/LayoutTests/storage/indexeddb/cursor-continue-dir-expected.txt 2015-12-05 01:21:28 UTC (rev 193494)
@@ -30,7 +30,7 @@
PASS Exception was thrown.
PASS code is 0
PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to execute 'continue' on 'IDBCursor': The parameter is less than or equal to this cursor's position.
request = store.openCursor(IDBKeyRange.bound(-Infinity, Infinity), 'prev')
cursor = request.result
PASS cursor is non-null.
@@ -40,7 +40,7 @@
PASS Exception was thrown.
PASS code is 0
PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to execute 'continue' on 'IDBCursor': The parameter is greater than or equal to this cursor's position.
PASS successfullyParsed is true
TEST COMPLETE
Modified: trunk/LayoutTests/storage/indexeddb/deleteIndex-expected.txt (193493 => 193494)
--- trunk/LayoutTests/storage/indexeddb/deleteIndex-expected.txt 2015-12-05 01:14:03 UTC (rev 193493)
+++ trunk/LayoutTests/storage/indexeddb/deleteIndex-expected.txt 2015-12-05 01:21:28 UTC (rev 193494)
@@ -14,7 +14,7 @@
PASS code is DOMException.NOT_FOUND_ERR
PASS ename is 'NotFoundError'
Exception message: Failed to execute 'deleteIndex' on 'IDBObjectStore': The specified index was not found.
-PASS objectStore.deleteIndex() threw exception TypeError: Failed to execute 'deleteIndex' on 'IDBObjectStore': 1 argument required, but only 0 present..
+PASS objectStore.deleteIndex() threw exception TypeError: Not enough arguments.
index = objectStore.createIndex('first', 'first');
Expecting exception from objectStore.deleteIndex('FIRST')
PASS Exception was thrown.
@@ -33,7 +33,7 @@
PASS Exception was thrown.
PASS code is 0
PASS ename is 'TransactionInactiveError'
-Exception message: Failed to execute 'deleteIndex' on 'IDBObjectStore': The transaction has finished.
+Exception message: Failed to execute 'deleteIndex' on 'IDBObjectStore': The transaction is inactive or finished.
PASS successfullyParsed is true
TEST COMPLETE
Modified: trunk/LayoutTests/storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt (193493 => 193494)
--- trunk/LayoutTests/storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt 2015-12-05 01:14:03 UTC (rev 193493)
+++ trunk/LayoutTests/storage/indexeddb/modern/idbdatabase-transaction-failures-expected.txt 2015-12-05 01:21:28 UTC (rev 193494)
@@ -5,6 +5,6 @@
ALERT: Failed to start a transaction to a nonexistent object store - Error: Failed to execute 'transaction' on 'IDBDatabase': One of the specified object stores was not found.
ALERT: Failed to start a transaction with an invalid mode - TypeError: Failed to execute 'transaction' on 'IDBDatabase': The mode provided ('invalid-mode') is not one of 'readonly' or 'readwrite'.
ALERT: Failed to explicitly start a versionchange transaction - TypeError: Failed to execute 'transaction' on 'IDBDatabase': The mode provided ('invalid-mode') is not one of 'readonly' or 'readwrite'.
-ALERT: Failed to explicitly start a transaction with the close pending flag set - Error: An operation was called on an object on which it is not allowed or at a time when it is not allowed.
+ALERT: Failed to explicitly start a transaction with the close pending flag set - Error: Failed to execute 'transaction' on 'IDBDatabase': The database connection is closing.
ALERT: Done
This tests some obvious failures that can happen while calling IDBDatabase.transaction()
Modified: trunk/Source/WebCore/ChangeLog (193493 => 193494)
--- trunk/Source/WebCore/ChangeLog 2015-12-05 01:14:03 UTC (rev 193493)
+++ trunk/Source/WebCore/ChangeLog 2015-12-05 01:21:28 UTC (rev 193494)
@@ -1,3 +1,18 @@
+2015-12-04 Brady Eidson <[email protected]>
+
+ Modern IDB: Add some more custom exception messages, passing some more tests.
+ https://bugs.webkit.org/show_bug.cgi?id=151895
+
+ Reviewed by Alex Christensen.
+
+ No new tests (Some failing tests now pass).
+
+ * Modules/indexeddb/client/IDBDatabaseImpl.cpp:
+ (WebCore::IDBClient::IDBDatabase::transaction):
+
+ * Modules/indexeddb/client/IDBObjectStoreImpl.cpp:
+ (WebCore::IDBClient::IDBObjectStore::deleteIndex):
+
2015-12-04 Jonathan Davis <[email protected]>
Update feature status for up-to-date status information.
Modified: trunk/Source/WebCore/Modules/indexeddb/client/IDBDatabaseImpl.cpp (193493 => 193494)
--- trunk/Source/WebCore/Modules/indexeddb/client/IDBDatabaseImpl.cpp 2015-12-05 01:14:03 UTC (rev 193493)
+++ trunk/Source/WebCore/Modules/indexeddb/client/IDBDatabaseImpl.cpp 2015-12-05 01:21:28 UTC (rev 193494)
@@ -143,6 +143,7 @@
if (m_closePending) {
ec.code = IDBDatabaseException::InvalidStateError;
+ ec.message = ASCIILiteral("Failed to execute 'transaction' on 'IDBDatabase': The database connection is closing.");
return nullptr;
}
Modified: trunk/Source/WebCore/Modules/indexeddb/client/IDBObjectStoreImpl.cpp (193493 => 193494)
--- trunk/Source/WebCore/Modules/indexeddb/client/IDBObjectStoreImpl.cpp 2015-12-05 01:14:03 UTC (rev 193493)
+++ trunk/Source/WebCore/Modules/indexeddb/client/IDBObjectStoreImpl.cpp 2015-12-05 01:21:28 UTC (rev 193494)
@@ -502,6 +502,7 @@
if (!m_transaction->isActive()) {
ec.code = IDBDatabaseException::TransactionInactiveError;
+ ec.message = ASCIILiteral("Failed to execute 'deleteIndex' on 'IDBObjectStore': The transaction is inactive or finished.");
return;
}