storage-idb-delete-blocked.html (1080B)
1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>Test for proper listing indexedDB databases with no object stores</title> 6 </head> 7 <body> 8 <script type="application/javascript"> 9 "use strict"; 10 let db; 11 12 window.setup = async function () { 13 db = await new Promise((resolve, reject) => { 14 const request = indexedDB.open("idb", 1); 15 16 request.onsuccess = e => resolve(e.target.result); 17 request.onerror = () => reject(new Error("error opening db connection")); 18 }); 19 20 dump("opened indexedDB\n"); 21 }; 22 23 window.closeDb = function() { 24 db.close(); 25 }; 26 27 window.deleteDb = async function () { 28 await new Promise((resolve, reject) => { 29 const request = indexedDB.deleteDatabase("idb"); 30 31 request.onsuccess = resolve; 32 request.onerror = () => reject(new Error("error deleting db")); 33 }); 34 }; 35 36 window.clear = async function () { 37 for (const dbName of ["idb1", "idb2"]) { 38 await new Promise(resolve => { 39 indexedDB.deleteDatabase(dbName).onsuccess = resolve; 40 }); 41 } 42 dump("removed indexedDB items from main page\n"); 43 }; 44 45 </script> 46 </body> 47 </html>