summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/IndexedDB/idbobjectstore-rename-errors.html
diff options
context:
space:
mode:
authorMoonchild <moonchild@palemoon.org>2021-02-25 01:03:57 +0000
committerMoonchild <moonchild@palemoon.org>2021-02-25 01:03:57 +0000
commitceadffab6b357723981a429e11222daf6cd6dcfb (patch)
tree5603053048d6a460f79b22bdf165fb74d32d39b0 /testing/web-platform/tests/IndexedDB/idbobjectstore-rename-errors.html
parent14fb2f966e9b54598c451e3cb35b4aa0480dafed (diff)
parentad5a13bd501e379517da1a944c104a11d951a3f5 (diff)
downloadUXP-RC_20210225.tar
UXP-RC_20210225.tar.gz
UXP-RC_20210225.tar.lz
UXP-RC_20210225.tar.xz
UXP-RC_20210225.zip
Merge branch 'master' into releaseRC_20210225
Diffstat (limited to 'testing/web-platform/tests/IndexedDB/idbobjectstore-rename-errors.html')
-rw-r--r--testing/web-platform/tests/IndexedDB/idbobjectstore-rename-errors.html118
1 files changed, 0 insertions, 118 deletions
diff --git a/testing/web-platform/tests/IndexedDB/idbobjectstore-rename-errors.html b/testing/web-platform/tests/IndexedDB/idbobjectstore-rename-errors.html
deleted file mode 100644
index 8e603baec..000000000
--- a/testing/web-platform/tests/IndexedDB/idbobjectstore-rename-errors.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<!DOCTYPE html>
-<title>IndexedDB: object store renaming error handling</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>
-
-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');
- database.deleteObjectStore('books');
- assert_throws('InvalidStateError', () => store.name = 'renamed_books');
- })).then(database => {
- database.close();
- });
-}, 'IndexedDB deleted object store rename throws');
-
-promise_test(testCase => {
- return createDatabase(testCase, (database, transaction) => {
- createBooksStore(testCase, database);
- }).then(database => {
- const transaction = database.transaction('books', 'readonly');
- const store = transaction.objectStore('books');
- assert_throws('InvalidStateError', () => store.name = 'renamed_books');
- database.close();
- });
-}, 'IndexedDB object store rename throws in a readonly transaction');
-
-promise_test(testCase => {
- return createDatabase(testCase, (database, transaction) => {
- createBooksStore(testCase, database);
- }).then(database => {
- const transaction = database.transaction('books', 'readwrite');
- const store = transaction.objectStore('books');
-
- assert_throws('InvalidStateError', () => store.name = 'renamed_books');
- database.close();
- });
-}, 'IndexedDB object store rename throws in a readwrite transaction');
-
-promise_test(testCase => {
- let bookStore = null;
- return createDatabase(testCase, (database, transaction) => {
- bookStore = createBooksStore(testCase, database);
- }).then(database => {
- assert_throws('TransactionInactiveError',
- () => { bookStore.name = 'renamed_books'; });
- database.close();
- });
-}, 'IndexedDB object store rename throws in an inactive transaction');
-
-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');
- assert_throws('ConstraintError', () => store.name = 'not_books');
- assert_array_equals(
- database.objectStoreNames, ['books', 'not_books'],
- 'A store rename that throws an exception should not change the ' +
- "store's IDBDatabase.objectStoreNames");
- })).then(database => {
- assert_array_equals(
- database.objectStoreNames, ['books', 'not_books'],
- 'Committing a transaction with a failed store rename attempt ' +
- "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 with a failed rename attempt should ' +
- "not change the store's contents").then(() => database.close());
- });
-}, 'IndexedDB object store rename to the name of another store throws');
-
-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');
- assert_throws(
- { name: 'Custom stringifying error' },
- () => {
- store.name = {
- toString: () => { throw { name: 'Custom stringifying error'}; }
- };
- }, 'IDBObjectStore rename should re-raise toString() exception');
- assert_array_equals(
- database.objectStoreNames, ['books'],
- 'A store rename that throws an exception should not change the ' +
- "store's IDBDatabase.objectStoreNames");
- })).then(database => {
- assert_array_equals(
- database.objectStoreNames, ['books'],
- 'Committing a transaction with a failed store rename attempt ' +
- "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 with a failed rename attempt should ' +
- "not change the store's contents").then(() => database.close());
- });
-}, 'IndexedDB object store rename handles exceptions when stringifying names');
-
-</script>