Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- Manifest: dom/quota/test/xpcshell/xpcshell.toml
/**
* Any copyright is dedicated to the Public Domain.
*/
/**
* This test is mainly to verify initializePersistentStorage() does call
* QuotaManager::EnsurePersistentStorageIsInitializedInternal() which does
* various things, for example, it restores the directory metadata if it's
* broken or missing.
*/
async function testSteps() {
const originDirPath = "storage/permanent/https+++foo.example.com";
const metadataFileName = ".metadata-v2";
info("Initializing");
let request = init();
await requestFinished(request);
info("Verifying initialization status");
await verifyInitializationStatus(true, false, false);
info("Creating an empty directory");
let originDir = getRelativeFile(originDirPath);
originDir.create(Ci.nsIFile.DIRECTORY_TYPE, parseInt("0755", 8));
info("Initializing persistent storage");
request = initializePersistentStorage();
await requestFinished(request);
info(
"Verifying directory metadata was restored after calling " +
"initializePersistentStorage()"
);
let metadataFile = originDir.clone();
metadataFile.append(metadataFileName);
ok(metadataFile.exists(), "Directory metadata file does exist");
info("Verifying initialization status");
await verifyInitializationStatus(true, true, false);
}