/** * @description - Function will create a database with the supplied name * and also create an object store with the specified name. * If a db with the name dbName exists, this will raze the * existing DB beforehand. * @param {string} dbName * @param {string} objectStoreName * @param {testCase} t * @returns {Promise} - A promise that resolves to an indexedDB open request
*/ function createDB(dbName, objectStoreName, t) { returnnew Promise((resolve, reject) => { const openRequest = indexedDB.open(dbName);
t.add_cleanup(() => {
indexedDB.deleteDatabase(dbName);
});
openRequest.onerror = () => {
reject(openRequest.error);
};
openRequest.onsuccess = () => {
resolve(openRequest.result);
};
openRequest.onupgradeneeded = (event) => {
openRequest.result.createObjectStore(objectStoreName);
};
});
}
/** * @description - This function will wrap an IDBTransaction in a promise, * resolving in the oncomplete() method and rejecting with the * transaction error in the onabort() case. * @param {IDBTransaction} transaction - The transaction to wrap in a promise. * @returns {Promise} - A promise that resolves when the transaction is either * aborted or completed.
*/ function transactionPromise(transaction) { returnnew Promise((resolve, reject) => {
transaction.onabort = () => {
reject(transaction.error);
};
transaction.oncomplete = () => {
resolve();
};
});
}
Messung V0.5
¤ Dauer der Verarbeitung: 0.17 Sekunden
(vorverarbeitet)
¤
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.