// create index to be deleted later in v3.
objectStore.createIndex(indexName_ToBeDeleted, "foo");
ok(objectStore.index(indexName_ToBeDeleted), "Index created.");
// create target index to be renamed.
let index = objectStore.createIndex(indexName_v0, "bar");
ok(objectStore.index(indexName_v0), "Index created.");
is(index.name, indexName_v0, "Correct index name");
index.name = indexName_v1;
is(index.name, indexName_v1, "Renamed index successfully");
info("Verify renaming done in v1 and run renaming in v2.");
request = indexedDB.open(name, 2);
request.onerror = errorHandler;
request.onupgradeneeded = grabEventAndContinueHandler;
request.onsuccess = unexpectedSuccessHandler;
event = yield undefined;
db = event.target.result;
txn = event.target.transaction;
objectStore = txn.objectStore(storeName);
// indexName_v0 created in v1 shall not be available. try {
index = objectStore.index(indexName_v0);
ok(false, "NotFoundError shall be thrown.");
} catch (e) {
ok(e instanceof DOMException, "got a database exception");
is(e.name, "NotFoundError", "correct error");
}
// rename to "v2".
index = objectStore.index(indexName_v1);
is(index.name, indexName_v1, "Correct index name");
index.name = indexName_v2;
is(index.name, indexName_v2, "Renamed index successfully");
db = event.target.result;
txn = event.target.transaction;
objectStore = txn.objectStore(storeName);
ok(objectStore.index(indexName_ToBeDeleted), "index is valid.");
objectStore.deleteIndex(indexName_ToBeDeleted); try {
objectStore.index(indexName_ToBeDeleted);
ok(false, "NotFoundError shall be thrown if the index name is deleted.");
} catch (e) {
ok(e instanceof DOMException, "got a database exception");
is(e.name, "NotFoundError", "correct error");
}
info("Rename with the name of the deleted index.");
index = objectStore.index(indexName_v2);
index.name = indexName_v3;
is(index.name, indexName_v3, "Renamed index successfully");
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.