소스 검색

Handle errors when attempting to clear IndexedDB store

JC Brand 5 년 전
부모
커밋
30bd4d34c9
1개의 변경된 파일12개의 추가작업 그리고 7개의 파일을 삭제
  1. 12 7
      tests/mock.js

+ 12 - 7
tests/mock.js

@@ -223,14 +223,19 @@
 
     function clearIndexedDB () {
         const promise = u.getResolveablePromise();
-        const DBOpenRequest = window.indexedDB.open("converse-test-persistent");
-        DBOpenRequest.onsuccess = function () {
-            const db = DBOpenRequest.result;
+        const db_request = window.indexedDB.open("converse-test-persistent");
+        db_request.onsuccess = function () {
+            const db = db_request.result;
             const bare_jid = "romeo@montague.lit";
-            const objectStore = db.transaction([bare_jid], "readwrite").objectStore(bare_jid);
-            const objectStoreRequest = objectStore.clear();
-            objectStoreRequest.onsuccess = promise.resolve();
-            objectStoreRequest.onerror = promise.resolve();
+            try {
+                const store= db.transaction([bare_jid], "readwrite").objectStore(bare_jid);
+            } catch (e) {
+                console.error(e);
+                return promise.resolve();
+            }
+            const request = store.clear();
+            request.onsuccess = promise.resolve();
+            request.onerror = promise.resolve();
         };
         return promise;
     }