test_upgradeStorageFrom2_2.js (1395B)
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 UpgradeStorageFrom2_2To2_3 method. 8 */ 9 10 async function testSteps() { 11 const packages = [ 12 // Storage used by FF 68-69 (storage version 2.2). 13 "version2_2_profile", 14 "../defaultStorageDirectory_shared", 15 ]; 16 17 function verifyDatabaseTable(shouldExist) { 18 let file = getRelativeFile("storage.sqlite"); 19 let conn = Services.storage.openUnsharedDatabase(file); 20 21 let exists = conn.tableExists("database"); 22 if (shouldExist) { 23 ok(exists, "Database table does exist"); 24 } else { 25 ok(!exists, "Database table does not exist"); 26 } 27 28 conn.close(); 29 } 30 31 info("Clearing"); 32 33 let request = clear(); 34 await requestFinished(request); 35 36 info("Verifying storage"); 37 38 verifyStorage(packages, "beforeInstall"); 39 40 info("Installing packages"); 41 42 installPackages(packages); 43 44 info("Verifying storage"); 45 46 verifyStorage(packages, "afterInstall"); 47 48 verifyDatabaseTable(/* shouldExist */ false); 49 50 info("Initializing"); 51 52 // Initialize to trigger storage upgrade from version 2.2 53 request = init(); 54 await requestFinished(request); 55 56 info("Verifying storage"); 57 58 verifyStorage(packages, "afterInit"); 59 60 request = reset(); 61 await requestFinished(request); 62 63 verifyDatabaseTable(/* shouldExist */ true); 64 }