test_upgradeFromIndexedDBDirectory_removeOldDirectory.js (2398B)
1 /** 2 * Any copyright is dedicated to the Public Domain. 3 * http://creativecommons.org/publicdomain/zero/1.0/ 4 */ 5 6 /** 7 * This test is mainly to verify that the old directory is removed in 8 * MaybeUpgradeFromIndexedDBDirectoryToPersistentStorageDirectory method. 9 */ 10 11 async function testSteps() { 12 const url = "http://www.mozilla.org"; 13 const persistence = "default"; 14 15 const packages = [ 16 // Storage used by FF 26-35 (storage/persistent/ directory and re-created 17 // indexedDB directory by an older FF). 18 "indexedDBAndPersistentStorageDirectory_profile", 19 "../persistentStorageDirectory_shared", 20 ]; 21 22 info("Clearing"); 23 24 let request = clear(); 25 await requestFinished(request); 26 27 info("Verifying storage"); 28 29 verifyStorage(packages, "beforeInstall"); 30 31 info("Installing packages"); 32 33 installPackages(packages); 34 35 info("Verifying storage"); 36 37 verifyStorage(packages, "afterInstall"); 38 39 info("Checking directories"); 40 41 let indexedDBDir = getRelativeFile("indexedDB"); 42 let exists = indexedDBDir.exists(); 43 ok(exists, "IndexedDB directory does exist"); 44 45 let persistentStorageDir = getRelativeFile("storage/persistent"); 46 exists = persistentStorageDir.exists(); 47 ok(exists, "Persistent storage directory does exist"); 48 49 info("Initializing"); 50 51 request = init(); 52 await requestFinished(request); 53 54 info("Verifying storage"); 55 56 verifyStorage(packages, "afterInit"); 57 58 // TODO: Remove this block once temporary storage initialization is able to 59 // ignore unknown directories. 60 getRelativeFile("storage/default/invalid+++example.com").remove(false); 61 getRelativeFile("storage/temporary/invalid+++example.com").remove(false); 62 63 info("Checking directories"); 64 65 indexedDBDir = getRelativeFile("indexedDB"); 66 exists = indexedDBDir.exists(); 67 ok(!exists, "IndexedDB directory doesn't exist"); 68 69 // FF 36 renamed storage/persistent/ to storage/default/ so it can't exist 70 // either. 71 persistentStorageDir = getRelativeFile("storage/persistent"); 72 exists = persistentStorageDir.exists(); 73 ok(!exists, "Persistent storage directory doesn't exist"); 74 75 info("Initializing temporary storage"); 76 77 request = initTemporaryStorage(); 78 await requestFinished(request); 79 80 info("Initializing origin"); 81 82 request = initTemporaryOrigin(persistence, getPrincipal(url)); 83 await requestFinished(request); 84 85 ok(!request.result, "Origin directory wasn't created"); 86 }