Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(592)

Unified Diff: third_party/WebKit/LayoutTests/external/wpt/IndexedDB/idbcursor-continuePrimaryKey.htm

Issue 2648173006: Import wpt@cf62b859e6b890abc34f8140d185ba91df95c5b6 (Closed)
Patch Set: Rebased Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/external/wpt/IndexedDB/idbcursor-continuePrimaryKey.htm
diff --git a/third_party/WebKit/LayoutTests/external/wpt/IndexedDB/idbcursor-continuePrimaryKey.htm b/third_party/WebKit/LayoutTests/external/wpt/IndexedDB/idbcursor-continuePrimaryKey.htm
deleted file mode 100644
index 773141cf436bd1758a44571d139a2ec85736704f..0000000000000000000000000000000000000000
--- a/third_party/WebKit/LayoutTests/external/wpt/IndexedDB/idbcursor-continuePrimaryKey.htm
+++ /dev/null
@@ -1,134 +0,0 @@
-<!doctype html>
-<meta charset="utf8">
-<title>IndexedDB: IDBCursor method continuePrimaryKey()</title>
-<link rel="help"
- href="http://w3c.github.io/IndexedDB/#dom-idbcursor-continueprimarykey">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="support.js"></script>
-
-<script>
-'use strict';
-
-indexeddb_test(
- (t, db, txn) => {
- const store = db.createObjectStore('store');
- const index = store.createIndex('index', 'indexKey', {multiEntry: true});
-
- store.put({indexKey: ['a', 'b']}, 1);
- store.put({indexKey: ['a', 'b']}, 2);
- store.put({indexKey: ['a', 'b']}, 3);
- store.put({indexKey: ['b']}, 4);
-
- const expectedIndexEntries = [
- {key: "a", primaryKey: 1},
- {key: "a", primaryKey: 2},
- {key: "a", primaryKey: 3},
- {key: "b", primaryKey: 1},
- {key: "b", primaryKey: 2},
- {key: "b", primaryKey: 3},
- {key: "b", primaryKey: 4},
- ];
-
- const request = index.openCursor();
- request.onerror = t.unreached_func('IDBIndex.openCursor should not fail');
- request.onsuccess = t.step_func(() => {
- const cursor = request.result;
- const expectedEntry = expectedIndexEntries.shift();
- if (expectedEntry) {
- assert_equals(cursor.key, expectedEntry.key,
- 'The index entry keys should reflect the object store contents');
- assert_equals(cursor.primaryKey, expectedEntry.primaryKey,
- 'The index entry primary keys should reflect the object store ' +
- 'contents');
- cursor.continue();
- } else {
- assert_equals(cursor, null,
- 'The index should not have entries that do not reflect the ' +
- 'object store contents');
- }
- });
- },
- (t, db) => {
- const testCases = [
- // Continuing index key
- { call: cursor => { cursor.continue(); },
- result: { key: "a", primaryKey: 2 } },
- { call: cursor => { cursor.continue('a'); },
- exception: 'DataError' },
- { call: cursor => { cursor.continue('b'); },
- result: { key: "b", primaryKey: 1 } },
- { call: cursor => { cursor.continue('c'); }, result: null },
-
- // Called w/ index key and primary key:
- { call: cursor => { cursor.continuePrimaryKey('a', 3); },
- result: { key: 'a', primaryKey: 3 } },
- { call: cursor => { cursor.continuePrimaryKey('a', 4); },
- result: { key: 'b', primaryKey: 1 } },
- { call: cursor => { cursor.continuePrimaryKey('b', 1); },
- result: {key: 'b', primaryKey: 1} },
- { call: cursor => { cursor.continuePrimaryKey('b', 4); },
- result: {key: 'b', primaryKey: 4} },
- { call: cursor => { cursor.continuePrimaryKey('b', 5); },
- result: null },
- { call: cursor => { cursor.continuePrimaryKey('c', 1); },
- result: null },
-
- // Called w/ primary key but w/o index key
- { call: cursor => { cursor.continuePrimaryKey(null, 1); },
- exception: 'DataError' },
- { call: cursor => { cursor.continuePrimaryKey(null, 2); },
- exception: 'DataError' },
- { call: cursor => { cursor.continuePrimaryKey(null, 3); },
- exception: 'DataError' },
- { call: cursor => { cursor.continuePrimaryKey(null, 4); },
- exception: 'DataError' },
- { call: cursor => { cursor.continuePrimaryKey(null, 5); },
- exception: 'DataError' },
-
- // Called w/ index key but w/o primary key
- { call: cursor => { cursor.continuePrimaryKey('a', null); },
- exception: 'DataError' },
- ];
-
- const verifyContinueCalls = () => {
- if (!testCases.length) {
- t.done();
- return;
- }
-
- const testCase = testCases.shift();
-
- const txn = db.transaction('store');
- txn.oncomplete = t.step_func(verifyContinueCalls);
-
- const request = txn.objectStore('store').index('index').openCursor();
- let calledContinue = false;
- request.onerror =
- t.unreached_func('IDBIndex.openCursor should not fail');
- request.onsuccess = t.step_func(() => {
- const cursor = request.result;
- if (calledContinue) {
- if (testCase.result) {
- assert_equals(cursor.key, testCase.result.key,
- `${testCase.call.toString()} - result key`);
- assert_equals(cursor.primaryKey, testCase.result.primaryKey,
- `${testCase.call.toString()} - result primary key`);
- } else {
- assert_equals(cursor, null);
- }
- } else {
- calledContinue = true;
- if('exception' in testCase) {
- assert_throws(
- testCase.exception, () => { testCase.call(cursor); },
- testCase.call.toString());
- } else {
- testCase.call(cursor);
- }
- }
- });
- };
- verifyContinueCalls();
- });
-</script>

Powered by Google App Engine
This is Rietveld 408576698