test_oldDirectories.js (1692B)
1 /** 2 * Any copyright is dedicated to the Public Domain. 3 * http://creativecommons.org/publicdomain/zero/1.0/ 4 */ 5 6 /* exported testGenerator */ 7 var testGenerator = testSteps(); 8 9 function* testSteps() { 10 // This lives in storage/default/http+++www.mozilla.org 11 const url = "http://www.mozilla.org"; 12 const dbName = "dbC"; 13 const dbVersion = 1; 14 15 function openDatabase() { 16 let uri = Services.io.newURI(url); 17 let principal = Services.scriptSecurityManager.createContentPrincipal( 18 uri, 19 {} 20 ); 21 let request = indexedDB.openForPrincipal(principal, dbName, dbVersion); 22 return request; 23 } 24 25 clearAllDatabases(continueToNextStepSync); 26 yield undefined; 27 28 installPackagedProfile("oldDirectories_profile"); 29 30 let request = openDatabase(); 31 request.onerror = errorHandler; 32 request.onupgradeneeded = unexpectedSuccessHandler; 33 request.onsuccess = grabEventAndContinueHandler; 34 let event = yield undefined; 35 36 is(event.type, "success", "Correct event type"); 37 38 resetAllDatabases(continueToNextStepSync); 39 yield undefined; 40 41 request = openDatabase(); 42 request.onerror = errorHandler; 43 request.onupgradeneeded = unexpectedSuccessHandler; 44 request.onsuccess = grabEventAndContinueHandler; 45 event = yield undefined; 46 47 is(event.type, "success", "Correct event type"); 48 49 let profileDir = Services.dirsvc.get("ProfD", Ci.nsIFile); 50 51 let dir = profileDir.clone(); 52 dir.append("indexedDB"); 53 54 let exists = dir.exists(); 55 ok(!exists, "indexedDB doesn't exist"); 56 57 dir = profileDir.clone(); 58 dir.append("storage"); 59 dir.append("persistent"); 60 61 exists = dir.exists(); 62 ok(!exists, "storage/persistent doesn't exist"); 63 64 finishTest(); 65 yield undefined; 66 }