test_originInitializationStarted.js (1204B)
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 /* exported testSteps */ 17 async function testSteps() { 18 const principal = PrincipalUtils.createPrincipal("https://example.com"); 19 20 info("Initializing storage"); 21 22 { 23 const request = Services.qms.init(); 24 await QuotaUtils.requestFinished(request); 25 } 26 27 info("Starting persistent origin initialization"); 28 29 const initPromise = (async function () { 30 const request = Services.qms.initializePersistentOrigin(principal); 31 const promise = QuotaUtils.requestFinished(request); 32 return promise; 33 })(); 34 35 info("Waiting for origin initialization to start"); 36 37 await TestUtils.topicObserved("QuotaManager::OriginInitializationStarted"); 38 39 info("Waiting for origin initialization to finish"); 40 41 await initPromise; 42 }