summaryrefslogtreecommitdiffstats
path: root/testing/marionette/harness/marionette_harness/www/dom/indexedDB/basicIDB_PBM.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/marionette/harness/marionette_harness/www/dom/indexedDB/basicIDB_PBM.html')
-rw-r--r--testing/marionette/harness/marionette_harness/www/dom/indexedDB/basicIDB_PBM.html49
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>