Title: [193981] trunk
Revision
193981
Author
[email protected]
Date
2015-12-11 14:14:18 -0800 (Fri, 11 Dec 2015)

Log Message

Modern IDB: storage/indexeddb/key-type-array.html fails.
https://bugs.webkit.org/show_bug.cgi?id=152187

Reviewed by Alex Christensen.

Source/WebCore:

No new tests (At least one failing test now passes).

* Modules/indexeddb/client/IDBObjectStoreImpl.cpp:
(WebCore::IDBClient::IDBObjectStore::putOrAdd): Perform the correct validity check on array keys.

LayoutTests:

* platform/mac-wk1/TestExpectations:
* storage/indexeddb/key-type-array-expected.txt:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (193980 => 193981)


--- trunk/LayoutTests/ChangeLog	2015-12-11 22:12:43 UTC (rev 193980)
+++ trunk/LayoutTests/ChangeLog	2015-12-11 22:14:18 UTC (rev 193981)
@@ -1,5 +1,15 @@
 2015-12-11  Brady Eidson  <[email protected]>
 
+        Modern IDB: storage/indexeddb/key-type-array.html fails.
+        https://bugs.webkit.org/show_bug.cgi?id=152187
+
+        Reviewed by Alex Christensen.
+
+        * platform/mac-wk1/TestExpectations:
+        * storage/indexeddb/key-type-array-expected.txt:
+
+2015-12-11  Brady Eidson  <[email protected]>
+
         Modern IDB: Updates to 3 intversion tests, and/or their results.
         https://bugs.webkit.org/show_bug.cgi?id=152179
 

Modified: trunk/LayoutTests/platform/mac-wk1/TestExpectations (193980 => 193981)


--- trunk/LayoutTests/platform/mac-wk1/TestExpectations	2015-12-11 22:12:43 UTC (rev 193980)
+++ trunk/LayoutTests/platform/mac-wk1/TestExpectations	2015-12-11 22:14:18 UTC (rev 193981)
@@ -102,7 +102,6 @@
 storage/indexeddb/intversion-pending-version-changes-descending.html [ Failure ]
 storage/indexeddb/intversion-pending-version-changes-same.html [ Failure ]
 storage/indexeddb/intversion-two-opens-no-versions.html [ Failure ]
-storage/indexeddb/key-type-array.html [ Failure ]
 storage/indexeddb/objectstore-autoincrement.html [ Failure ]
 storage/indexeddb/open-cursor.html [ Failure ]
 storage/indexeddb/open-db-private-browsing.html [ Failure ]

Modified: trunk/LayoutTests/storage/indexeddb/key-type-array-expected.txt (193980 => 193981)


--- trunk/LayoutTests/storage/indexeddb/key-type-array-expected.txt	2015-12-11 22:12:43 UTC (rev 193980)
+++ trunk/LayoutTests/storage/indexeddb/key-type-array-expected.txt	2015-12-11 22:14:18 UTC (rev 193981)
@@ -170,112 +170,112 @@
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ true ]
 Expecting exception from store.put('value', [ true ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ false ]
 Expecting exception from store.put('value', [ false ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ NaN ]
 Expecting exception from store.put('value', [ NaN ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ null ]
 Expecting exception from store.put('value', [ null ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ {} ]
 Expecting exception from store.put('value', [ {} ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ function () {} ]
 Expecting exception from store.put('value', [ function () {} ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ /regex/ ]
 Expecting exception from store.put('value', [ /regex/ ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ self ]
 Expecting exception from store.put('value', [ self ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ self.document ]
 Expecting exception from store.put('value', [ self.document ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: [ self.document.body ]
 Expecting exception from store.put('value', [ self.document.body ]);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: cyclic_array
 Expecting exception from store.put('value', cyclic_array);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: cyclic_array2
 Expecting exception from store.put('value', cyclic_array2);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: cyclic_array3
 Expecting exception from store.put('value', cyclic_array3);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: cyclic_array4
 Expecting exception from store.put('value', cyclic_array4);
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 testing invalid array key: Array(1000)
 Expecting exception from store.put('value', Array(1000));
 PASS Exception was thrown.
 PASS code is 0
 PASS ename is 'DataError'
-Exception message: DataError: DOM IDBDatabase Exception 0
+Exception message: Failed to store record in an IDBObjectStore: The parameter is not a valid key.
 
 PASS indexedDB.cmp(makeArrayOfDepth(25), 0) is 1
 PASS indexedDB.cmp(makeArrayOfDepth(250), 0) is 1
@@ -283,7 +283,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 'cmp' on 'IDBFactory': The parameter is not a valid key.
 
 PASS successfullyParsed is true
 

Modified: trunk/Source/WebCore/ChangeLog (193980 => 193981)


--- trunk/Source/WebCore/ChangeLog	2015-12-11 22:12:43 UTC (rev 193980)
+++ trunk/Source/WebCore/ChangeLog	2015-12-11 22:14:18 UTC (rev 193981)
@@ -1,3 +1,15 @@
+2015-12-11  Brady Eidson  <[email protected]>
+
+        Modern IDB: storage/indexeddb/key-type-array.html fails.
+        https://bugs.webkit.org/show_bug.cgi?id=152187
+
+        Reviewed by Alex Christensen.
+
+        No new tests (At least one failing test now passes).
+
+        * Modules/indexeddb/client/IDBObjectStoreImpl.cpp:
+        (WebCore::IDBClient::IDBObjectStore::putOrAdd): Perform the correct validity check on array keys.
+
 2015-12-11  Joseph Pecoraro  <[email protected]>
 
         check-for-inappropriate-objc-class-names should check all class names, not just externally visible ones

Modified: trunk/Source/WebCore/Modules/indexeddb/client/IDBObjectStoreImpl.cpp (193980 => 193981)


--- trunk/Source/WebCore/Modules/indexeddb/client/IDBObjectStoreImpl.cpp	2015-12-11 22:12:43 UTC (rev 193980)
+++ trunk/Source/WebCore/Modules/indexeddb/client/IDBObjectStoreImpl.cpp	2015-12-11 22:14:18 UTC (rev 193981)
@@ -269,7 +269,7 @@
         return nullptr;
     }
 
-    if (key && key->type() == KeyType::Invalid) {
+    if (key && !key->isValid()) {
         ec.code = IDBDatabaseException::DataError;
         ec.message = ASCIILiteral("Failed to store record in an IDBObjectStore: The parameter is not a valid key.");
         return nullptr;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to