<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - [GTK] IndexedDB tests failing with Modern IDB"
href="https://bugs.webkit.org/show_bug.cgi?id=156438">156438</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>[GTK] IndexedDB tests failing with Modern IDB
</td>
</tr>
<tr>
<th>Classification</th>
<td>Unclassified
</td>
</tr>
<tr>
<th>Product</th>
<td>WebKit
</td>
</tr>
<tr>
<th>Version</th>
<td>Other
</td>
</tr>
<tr>
<th>Hardware</th>
<td>PC
</td>
</tr>
<tr>
<th>OS</th>
<td>Linux
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>Normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>P2
</td>
</tr>
<tr>
<th>Component</th>
<td>WebKit Gtk
</td>
</tr>
<tr>
<th>Assignee</th>
<td>webkit-unassigned@lists.webkit.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>mcatanzaro@igalia.com
</td>
</tr>
<tr>
<th>CC</th>
<td>bugs-noreply@webkitgtk.org
</td>
</tr></table>
<p>
<div>
<pre>Since Modern IDB has landed, I unskipped many IndexedDB tests in r199270. Unfortunately four of the tests are failing on the GTK port:
imported/w3c/web-platform-tests/IndexedDB/idbindex-multientry-big.htm
imported/w3c/web-platform-tests/IndexedDB/keyorder.htm
inspector/indexeddb/requestDatabaseNames.html
storage/indexeddb/cursor-key-order.html
All other IndexedDB tests appear to be passing, which is an awesome improvement.
--- /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/imported/w3c/web-platform-tests/IndexedDB/idbindex-multientry-big-expected.txt
+++ /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/imported/w3c/web-platform-tests/IndexedDB/idbindex-multientry-big-actual.txt
@@ -1,4 +1,6 @@
+
+Harness Error (TIMEOUT), message = null
PASS Adding one item with 1000 multiEntry keys
-PASS Getting the one item by 1000 indeced keys
+TIMEOUT Getting the one item by 1000 indeced keys Test timed out
--- /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/imported/w3c/web-platform-tests/IndexedDB/keyorder-expected.txt
+++ /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/imported/w3c/web-platform-tests/IndexedDB/keyorder-actual.txt
@@ -1,3 +1,5 @@
+
+Harness Error (TIMEOUT), message = null
PASS Database readback sort - String < Array
PASS IDBKey.cmp sorted - String < Array
@@ -17,10 +19,10 @@
PASS IDBKey.cmp sorted - "" < "a" < "ab" < "b" < "ba"
PASS Database readback sort - Arrays
PASS IDBKey.cmp sorted - Arrays
-PASS Database readback sort - Array.length: 10,000 < Array.length: 10,001
+TIMEOUT Database readback sort - Array.length: 10,000 < Array.length: 10,001 Test timed out
PASS IDBKey.cmp sorted - Array.length: 10,000 < Array.length: 10,001
-PASS Database readback sort - Infinity inside arrays
+TIMEOUT Database readback sort - Infinity inside arrays Test timed out
PASS IDBKey.cmp sorted - Infinity inside arrays
-PASS Database readback sort - Test different stuff at once
+TIMEOUT Database readback sort - Test different stuff at once Test timed out
PASS IDBKey.cmp sorted - Test different stuff at once
--- /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/inspector/indexeddb/requestDatabaseNames-expected.txt
+++ /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/inspector/indexeddb/requestDatabaseNames-actual.txt
@@ -1,11 +1,4 @@
-CONSOLE MESSAGE: line 10: Created Database 'Database1'
-CONSOLE MESSAGE: line 10: Created Database 'Database2'
-PASS: No IndexedDB databases should exist initially
-Created Database 'Database1'
-PASS: A single IndexedDB database should exist
-["Database1"]
-Created Database 'Database2'
-PASS: Two IndexedDB databases should exist
-["Database1","Database2"]
+PROTOCOL ERROR: Could not obtain database names.
+ERROR: Uncaught exception in inspector page while dispatching callback for command IndexedDB.requestDatabaseNames PROTOCOL ERROR
--- /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/storage/indexeddb/cursor-key-order-expected.txt
+++ /home/slave/webkitgtk/gtk-linux-64-release-tests/build/layout-test-results/storage/indexeddb/cursor-key-order-actual.txt
@@ -119,156 +119,148 @@
cursor = curreq.result
PASS compare(cursor.key, '') is true
getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, '\0') is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, 'a') is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, 'aa') is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, 'b') is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, 'ba') is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, '¢') is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, '水') is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, '𝄞') is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, '�') is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, []) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [-Infinity]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [-Number.MAX_VALUE]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [-1]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [-Number.MIN_VALUE]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [0]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [Number.MIN_VALUE]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [1]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [Number.MAX_VALUE]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [Infinity]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [new Date(0)]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [new Date(1000)]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [new Date(1317399931023)]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['\0']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['a']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['aa']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['b']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['ba']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['¢']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['水']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['𝄞']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, ['�']) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [[]]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [[], []]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [[], [], []]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [[[]]]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-cursor = curreq.result
-PASS compare(cursor.key, [[[[]]]]) is true
-getreq = store.get(cursor.key)
-PASS getreq.result is count++
-PASS count is keys.length
+FAIL getreq.result should be 12. Was 13.
+cursor = curreq.result
+FAIL compare(cursor.key, '\0') should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 13. Was 14.
+cursor = curreq.result
+FAIL compare(cursor.key, 'a') should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 14. Was 15.
+cursor = curreq.result
+FAIL compare(cursor.key, 'aa') should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 15. Was 16.
+cursor = curreq.result
+FAIL compare(cursor.key, 'b') should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 16. Was 17.
+cursor = curreq.result
+FAIL compare(cursor.key, 'ba') should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 17. Was 18.
+cursor = curreq.result
+FAIL compare(cursor.key, '¢') should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 18. Was 19.
+cursor = curreq.result
+FAIL compare(cursor.key, '水') should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 19. Was 20.
+cursor = curreq.result
+FAIL compare(cursor.key, '𝄞') should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 20. Was 21.
+cursor = curreq.result
+FAIL compare(cursor.key, '�') should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 21. Was 22.
+cursor = curreq.result
+FAIL compare(cursor.key, []) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 22. Was 23.
+cursor = curreq.result
+FAIL compare(cursor.key, [-Infinity]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 23. Was 24.
+cursor = curreq.result
+FAIL compare(cursor.key, [-Number.MAX_VALUE]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 24. Was 25.
+cursor = curreq.result
+FAIL compare(cursor.key, [-1]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 25. Was 26.
+cursor = curreq.result
+FAIL compare(cursor.key, [-Number.MIN_VALUE]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 26. Was 27.
+cursor = curreq.result
+FAIL compare(cursor.key, [0]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 27. Was 28.
+cursor = curreq.result
+FAIL compare(cursor.key, [Number.MIN_VALUE]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 28. Was 29.
+cursor = curreq.result
+FAIL compare(cursor.key, [1]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 29. Was 30.
+cursor = curreq.result
+FAIL compare(cursor.key, [Number.MAX_VALUE]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 30. Was 31.
+cursor = curreq.result
+FAIL compare(cursor.key, [Infinity]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 31. Was 32.
+cursor = curreq.result
+FAIL compare(cursor.key, [new Date(0)]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 32. Was 33.
+cursor = curreq.result
+FAIL compare(cursor.key, [new Date(1000)]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 33. Was 34.
+cursor = curreq.result
+FAIL compare(cursor.key, [new Date(1317399931023)]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 34. Was 36.
+cursor = curreq.result
+FAIL compare(cursor.key, ['']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 35. Was 37.
+cursor = curreq.result
+FAIL compare(cursor.key, ['\0']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 36. Was 38.
+cursor = curreq.result
+FAIL compare(cursor.key, ['a']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 37. Was 39.
+cursor = curreq.result
+FAIL compare(cursor.key, ['aa']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 38. Was 40.
+cursor = curreq.result
+FAIL compare(cursor.key, ['b']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 39. Was 41.
+cursor = curreq.result
+FAIL compare(cursor.key, ['ba']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 40. Was 42.
+cursor = curreq.result
+FAIL compare(cursor.key, ['¢']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 41. Was 43.
+cursor = curreq.result
+FAIL compare(cursor.key, ['水']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 42. Was 44.
+cursor = curreq.result
+FAIL compare(cursor.key, ['𝄞']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 43. Was 45.
+cursor = curreq.result
+FAIL compare(cursor.key, ['�']) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 44. Was 46.
+cursor = curreq.result
+FAIL compare(cursor.key, [[]]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 45. Was 47.
+cursor = curreq.result
+FAIL compare(cursor.key, [[], []]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 46. Was 48.
+cursor = curreq.result
+FAIL compare(cursor.key, [[], [], []]) should be true. Was false.
+getreq = store.get(cursor.key)
+FAIL getreq.result should be 47. Was 49.
+FAIL count should be 50. Was 48.
validate compare function
PASS compare(undefined, undefined) is true</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>