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

Unified Diff: third_party/WebKit/LayoutTests/imported/wpt/IndexedDB/idbobjectstore-rename-store.html

Issue 2408083002: Revert of Import wpt@357b83b809e3cbc7a1805e7c3ca108a7980d782f (Closed)
Patch Set: Created 4 years, 2 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/imported/wpt/IndexedDB/idbobjectstore-rename-store.html
diff --git a/third_party/WebKit/LayoutTests/imported/wpt/IndexedDB/idbobjectstore-rename-store.html b/third_party/WebKit/LayoutTests/imported/wpt/IndexedDB/idbobjectstore-rename-store.html
deleted file mode 100644
index 47860b59014224654f86b5890d2cefdce736b603..0000000000000000000000000000000000000000
--- a/third_party/WebKit/LayoutTests/imported/wpt/IndexedDB/idbobjectstore-rename-store.html
+++ /dev/null
@@ -1,366 +0,0 @@
-<!DOCTYPE html>
-<title>IndexedDB: object store renaming support</title>
-<link rel="help"
- href="https://w3c.github.io/IndexedDB/#dom-idbobjectstore-name">
-<link rel="author" href="pwnall@chromium.org" title="Victor Costan">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="support-promises.js"></script>
-<script>
-
-// Renames the 'books' store to 'renamed_books'.
-//
-// Returns a promise that resolves to an IndexedDB database. The caller must
-// close the database.
-const renameBooksStore = (testCase) => {
- return migrateDatabase(testCase, 2, (database, transaction) => {
- const store = transaction.objectStore('books');
- store.name = 'renamed_books';
- });
-};
-
-promise_test(testCase => {
- let bookStore = null, bookStore2 = null;
- let renamedBookStore = null, renamedBookStore2 = null;
- return createDatabase(testCase, (database, transaction) => {
- bookStore = createBooksStore(testCase, database);
- }).then(database => {
- assert_array_equals(
- database.objectStoreNames, ['books'],
- 'Test setup should have created a "books" object store');
- const transaction = database.transaction('books', 'readonly');
- bookStore2 = transaction.objectStore('books');
- return checkStoreContents(
- testCase, bookStore2,
- 'The store should have the expected contents before any renaming').
- then(() => database.close());
- }).then(() => migrateDatabase(testCase, 2, (database, transaction) => {
- renamedBookStore = transaction.objectStore('books');
- renamedBookStore.name = 'renamed_books';
-
- assert_equals(
- renamedBookStore.name, 'renamed_books',
- 'IDBObjectStore name should change immediately after a rename');
- assert_array_equals(
- database.objectStoreNames, ['renamed_books'],
- 'IDBDatabase.objectStoreNames should immediately reflect the ' +
- 'rename');
- assert_array_equals(
- transaction.objectStoreNames, ['renamed_books'],
- 'IDBTransaction.objectStoreNames should immediately reflect the ' +
- 'rename');
- assert_equals(
- transaction.objectStore('renamed_books'), renamedBookStore,
- 'IDBTransaction.objectStore should return the renamed object ' +
- 'store when queried using the new name immediately after the ' +
- 'rename');
- assert_throws(
- 'NotFoundError', () => transaction.objectStore('books'),
- 'IDBTransaction.objectStore should throw when queried using the ' +
- "renamed object store's old name immediately after the rename");
- })).then(database => {
- assert_array_equals(
- database.objectStoreNames, ['renamed_books'],
- 'IDBDatabase.objectStoreNames should still reflect the rename ' +
- 'after the versionchange transaction commits');
- const transaction = database.transaction('renamed_books', 'readonly');
- renamedBookStore2 = transaction.objectStore('renamed_books');
- return checkStoreContents(
- testCase, renamedBookStore2,
- 'Renaming an object store should not change its records').then(
- () => database.close());
- }).then(() => {
- assert_equals(
- bookStore.name, 'books',
- 'IDBObjectStore obtained before the rename transaction should ' +
- 'not reflect the rename');
- assert_equals(
- bookStore2.name, 'books',
- 'IDBObjectStore obtained before the rename transaction should ' +
- 'not reflect the rename');
- assert_equals(
- renamedBookStore.name, 'renamed_books',
- 'IDBObjectStore used in the rename transaction should keep ' +
- 'reflecting the new name after the transaction is committed');
- assert_equals(
- renamedBookStore2.name, 'renamed_books',
- 'IDBObjectStore obtained after the rename transaction should ' +
- 'reflect the new name');
- });
-}, 'IndexedDB object store rename in new transaction');
-
-promise_test(testCase => {
- let renamedBookStore = null, renamedBookStore2 = null;
- return createDatabase(testCase, (database, transaction) => {
- renamedBookStore = createBooksStore(testCase, database);
- renamedBookStore.name = 'renamed_books';
-
- assert_equals(
- renamedBookStore.name, 'renamed_books',
- 'IDBObjectStore name should change immediately after a rename');
- assert_array_equals(
- database.objectStoreNames, ['renamed_books'],
- 'IDBDatabase.objectStoreNames should immediately reflect the ' +
- 'rename');
- assert_array_equals(
- transaction.objectStoreNames, ['renamed_books'],
- 'IDBTransaction.objectStoreNames should immediately reflect the ' +
- 'rename');
- assert_equals(
- transaction.objectStore('renamed_books'), renamedBookStore,
- 'IDBTransaction.objectStore should return the renamed object ' +
- 'store when queried using the new name immediately after the ' +
- 'rename');
- assert_throws(
- 'NotFoundError', () => transaction.objectStore('books'),
- 'IDBTransaction.objectStore should throw when queried using the ' +
- "renamed object store's old name immediately after the rename");
- }).then(database => {
- assert_array_equals(
- database.objectStoreNames, ['renamed_books'],
- 'IDBDatabase.objectStoreNames should still reflect the rename ' +
- 'after the versionchange transaction commits');
- const transaction = database.transaction('renamed_books', 'readonly');
- renamedBookStore2 = transaction.objectStore('renamed_books');
- return checkStoreContents(
- testCase, renamedBookStore2,
- 'Renaming an object store should not change its records').then(
- () => database.close());
- }).then(() => {
- assert_equals(
- renamedBookStore.name, 'renamed_books',
- 'IDBObjectStore used in the rename transaction should keep ' +
- 'reflecting the new name after the transaction is committed');
- assert_equals(
- renamedBookStore2.name, 'renamed_books',
- 'IDBObjectStore obtained after the rename transaction should ' +
- 'reflect the new name');
- });
-}, 'IndexedDB object store rename in the transaction where it is created');
-
-promise_test(testCase => {
- return createDatabase(testCase, (database, transaction) => {
- createBooksStore(testCase, database);
- }).then(database => {
- const transaction = database.transaction('books', 'readonly');
- const store = transaction.objectStore('books');
- return checkStoreIndexes(
- testCase, store,
- 'The object store index should have the expected contens before ' +
- 'any renaming').then(
- () => database.close());
- }).then(() => renameBooksStore(testCase)
- ).then(database => {
- const transaction = database.transaction('renamed_books', 'readonly');
- const store = transaction.objectStore('renamed_books');
- return checkStoreIndexes(
- testCase, store,
- 'Renaming an object store should not change its indexes').then(
- () => database.close());
- });
-}, 'IndexedDB object store rename covers index');
-
-promise_test(testCase => {
- return createDatabase(testCase, (database, transaction) => {
- createBooksStore(testCase, database);
- }).then(database => {
- const transaction = database.transaction('books', 'readwrite');
- const store = transaction.objectStore('books');
- return checkStoreGenerator(
- testCase, store, 345679,
- 'The object store key generator should have the expected state ' +
- 'before any renaming').then(() => database.close());
- }).then(() => renameBooksStore(testCase)
- ).then(database => {
- const transaction = database.transaction('renamed_books', 'readwrite');
- const store = transaction.objectStore('renamed_books');
- return checkStoreGenerator(
- testCase, store, 345680,
- 'Renaming an object store should not change the state of its key ' +
- 'generator').then(() => database.close());
- });
-}, 'IndexedDB object store rename covers key generator');
-
-promise_test(testCase => {
- return createDatabase(testCase, (database, transaction) => {
- createBooksStore(testCase, database);
- }).then(database => {
- database.close();
- }).then(() => migrateDatabase(testCase, 2, (database, transaction) => {
- const store = transaction.objectStore('books');
- store.name = 'books';
- assert_array_equals(
- database.objectStoreNames, ['books'],
- 'Renaming a store to the same name should not change ' +
- "the store's IDBDatabase.objectStoreNames");
- })).then(database => {
- assert_array_equals(
- database.objectStoreNames, ['books'],
- 'Committing a transaction that renames a store to the same name ' +
- "should not change the store's IDBDatabase.objectStoreNames");
- const transaction = database.transaction('books', 'readonly');
- const store = transaction.objectStore('books');
- return checkStoreContents(
- testCase, store,
- 'Committing a transaction that renames a store to the same name ' +
- "should not change the store's contents").then(
- () => database.close());
- });
-}, 'IndexedDB object store rename to the same name succeeds');
-
-promise_test(testCase => {
- return createDatabase(testCase, (database, transaction) => {
- createBooksStore(testCase, database);
- createNotBooksStore(testCase, database);
- }).then(database => {
- database.close();
- }).then(() => migrateDatabase(testCase, 2, (database, transaction) => {
- const store = transaction.objectStore('books');
- database.deleteObjectStore('not_books');
- store.name = 'not_books';
- assert_array_equals(
- database.objectStoreNames, ['not_books'],
- 'IDBDatabase.objectStoreNames should immediately reflect the ' +
- 'rename');
- })).then(database => {
- assert_array_equals(
- database.objectStoreNames, ['not_books'],
- 'IDBDatabase.objectStoreNames should still reflect the rename ' +
- 'after the versionchange transaction commits');
- const transaction = database.transaction('not_books', 'readonly');
- const store = transaction.objectStore('not_books');
- return checkStoreContents(
- testCase, store,
- 'Renaming an object store should not change its records').then(
- () => database.close());
- });
-}, 'IndexedDB object store rename to the name of a deleted store succeeds');
-
-promise_test(testCase => {
- return createDatabase(testCase, (database, transaction) => {
- createBooksStore(testCase, database);
- createNotBooksStore(testCase, database);
- }).then(database => {
- database.close();
- }).then(() => migrateDatabase(testCase, 2, (database, transaction) => {
- const bookStore = transaction.objectStore('books');
- const notBookStore = transaction.objectStore('not_books');
-
- transaction.objectStore('books').name = 'tmp';
- transaction.objectStore('not_books').name = 'books';
- transaction.objectStore('tmp').name = 'not_books';
-
- assert_array_equals(
- database.objectStoreNames, ['books', 'not_books'],
- 'IDBDatabase.objectStoreNames should immediately reflect the swap');
-
- assert_equals(
- transaction.objectStore('books'), notBookStore,
- 'IDBTransaction.objectStore should return the original "books" ' +
- 'store when queried with "not_books" after the swap');
- assert_equals(
- transaction.objectStore('not_books'), bookStore,
- 'IDBTransaction.objectStore should return the original ' +
- '"not_books" store when queried with "books" after the swap');
- })).then(database => {
- assert_array_equals(
- database.objectStoreNames, ['books', 'not_books'],
- 'IDBDatabase.objectStoreNames should still reflect the swap ' +
- 'after the versionchange transaction commits');
- const transaction = database.transaction('not_books', 'readonly');
- const store = transaction.objectStore('not_books');
- assert_array_equals(
- store.indexNames, ['by_author', 'by_title'],
- '"not_books" index names should still reflect the swap after the ' +
- 'versionchange transaction commits');
- return checkStoreContents(
- testCase, store,
- 'Swapping two object stores should not change their records').then(
- () => database.close());
- });
-}, 'IndexedDB object store swapping via renames succeeds');
-
-promise_test(testCase => {
- return createDatabase(testCase, (database, transaction) => {
- createBooksStore(testCase, database);
- }).then(database => {
- database.close();
- }).then(() => migrateDatabase(testCase, 2, (database, transaction) => {
- const store = transaction.objectStore('books');
-
- store.name = 42;
- assert_equals(store.name, '42',
- 'IDBObjectStore name should change immediately after a ' +
- 'rename to a number');
- assert_array_equals(
- database.objectStoreNames, ['42'],
- 'IDBDatabase.objectStoreNames should immediately reflect the ' +
- 'stringifying rename');
-
- store.name = true;
- assert_equals(store.name, 'true',
- 'IDBObjectStore name should change immediately after a ' +
- 'rename to a boolean');
-
- store.name = {};
- assert_equals(store.name, '[object Object]',
- 'IDBObjectStore name should change immediately after a ' +
- 'rename to an object');
-
- store.name = () => null;
- assert_equals(store.name, '() => null',
- 'IDBObjectStore name should change immediately after a ' +
- 'rename to a function');
-
- store.name = undefined;
- assert_equals(store.name, 'undefined',
- 'IDBObjectStore name should change immediately after a ' +
- 'rename to undefined');
- })).then(database => {
- assert_array_equals(
- database.objectStoreNames, ['undefined'],
- 'IDBDatabase.objectStoreNames should reflect the last rename ' +
- 'after the versionchange transaction commits');
- const transaction = database.transaction('undefined', 'readonly');
- const store = transaction.objectStore('undefined');
- return checkStoreContents(
- testCase, store,
- 'Renaming an object store should not change its records').then(
- () => database.close());
- });
-}, 'IndexedDB object store rename stringifies non-string names');
-
-for (let escapedName of ['', '\\u0000', '\\uDC00\\uD800']) ((escapedName) => {
- const name = JSON.parse('"' + escapedName + '"');
- promise_test(testCase => {
- return createDatabase(testCase, (database, transaction) => {
- createBooksStore(testCase, database);
- }).then(database => {
- database.close();
- }).then(() => migrateDatabase(testCase, 2, (database, transaction) => {
- const store = transaction.objectStore('books');
-
- store.name = name;
- assert_equals(store.name, name,
- 'IDBObjectStore name should change immediately after the ' +
- 'rename');
- assert_array_equals(
- database.objectStoreNames, [name],
- 'IDBDatabase.objectStoreNames should immediately reflect the ' +
- 'rename');
- })).then(database => {
- assert_array_equals(
- database.objectStoreNames, [name],
- 'IDBDatabase.objectStoreNames should reflect the rename ' +
- 'after the versionchange transaction commits');
- const transaction = database.transaction(name, 'readonly');
- const store = transaction.objectStore(name);
- return checkStoreContents(
- testCase, store,
- 'Renaming an object store should not change its records').then(
- () => database.close());
- });
- }, 'IndexedDB object store can be renamed to "' + escapedName + '"');
-})(escapedName);
-
-</script>

Powered by Google App Engine
This is Rietveld 408576698