test_databaseWorkStarted.js (1081B)
1 /** 2 * Any copyright is dedicated to the Public Domain. 3 * http://creativecommons.org/publicdomain/zero/1.0/ 4 */ 5 6 const { PrincipalUtils } = ChromeUtils.importESModule( 7 "resource://testing-common/dom/quota/test/modules/PrincipalUtils.sys.mjs" 8 ); 9 const { QuotaUtils } = ChromeUtils.importESModule( 10 "resource://testing-common/dom/quota/test/modules/QuotaUtils.sys.mjs" 11 ); 12 const { TestUtils } = ChromeUtils.importESModule( 13 "resource://testing-common/TestUtils.sys.mjs" 14 ); 15 16 add_task(async function testSteps() { 17 const principal = PrincipalUtils.createPrincipal("https://example.com"); 18 19 info("Clearing"); 20 21 { 22 const request = Services.qms.clear(); 23 await QuotaUtils.requestFinished(request); 24 } 25 26 info("Installing package"); 27 28 installPackage("somedata_profile"); 29 30 info("Starting database opening"); 31 32 const openPromise = Services.domStorageManager.preload(principal); 33 34 info("Waiting for database work to start"); 35 36 await TestUtils.topicObserved("LocalStorage::DatabaseWorkStarted"); 37 38 info("Waiting for database to finish opening"); 39 40 await openPromise; 41 });