diff options
Diffstat (limited to 'testing/marionette/harness/marionette_harness/www/dom/indexedDB')
-rw-r--r-- | testing/marionette/harness/marionette_harness/www/dom/indexedDB/basicIDB_PBM.html | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/testing/marionette/harness/marionette_harness/www/dom/indexedDB/basicIDB_PBM.html b/testing/marionette/harness/marionette_harness/www/dom/indexedDB/basicIDB_PBM.html new file mode 100644 index 0000000000..90472d64d2 --- /dev/null +++ b/testing/marionette/harness/marionette_harness/www/dom/indexedDB/basicIDB_PBM.html @@ -0,0 +1,49 @@ +<html> + <head> + <script> + async function ensureIDB(name, ver, store) { + return new Promise((resolve, reject) => { + let createObjectStore = (db, store) => { + db.createObjectStore(store); + }; + + var req = indexedDB.open(name, ver); + req.onerror = reject; + + req.onsuccess = (event) => { + resolve(req.result); + }; + + req.onupgradeneeded = function (event) { + let db = event.target.result; + createObjectStore(db, store); + }; + }); + }; + + async function addDataIntoIDB(idb, store, key, value) { + let db = await ensureIDB(idb, 1, store); + await (new Promise((resolve, reject) => { + var transaction = db.transaction([store], "readwrite"); + var put = transaction.objectStore(store).put(value, key); + put.onerror = reject; + put.onsuccess = resolve; + })); + + closeIDB(db) + }; + + function closeIDB(db) { + db.close(); + } + + function deleteIDB(db) { + return new Promise((resolve, reject) => { + let deleteReq = indexedDB.deleteDatabase(db); + deleteReq.onerror = reject; + deleteReq.onsuccess = resolve; + }); + } + </script> + </head> +</html> |