Source code

Revision control

Copy as Markdown

Other Tools

Test Info: Warnings

"use strict";
add_task(async function test_XPIStates_invalid_paths() {
let { path } = gAddonStartup;
let startupDatasets = [
{
"app-profile": {
addons: {
"xpcshell-something-or-other@mozilla.org": {
bootstrapped: true,
dependencies: [],
enabled: true,
hasEmbeddedWebExtension: false,
lastModifiedTime: 1,
path: "xpcshell-something-or-other@mozilla.org",
version: "0.0.0",
},
},
checkStartupModifications: true,
path: "/home/xpcshell/.mozilla/firefox/default/extensions",
},
},
{
"app-profile": {
addons: {
"xpcshell-something-or-other@mozilla.org": {
bootstrapped: true,
dependencies: [],
enabled: true,
hasEmbeddedWebExtension: false,
lastModifiedTime: 1,
path: "xpcshell-something-or-other@mozilla.org",
version: "0.0.0",
},
},
checkStartupModifications: true,
path: "c:\\Users\\XpcShell\\Application Data\\Mozilla Firefox\\Profiles\\meh",
},
},
{
"app-profile": {
addons: {
"xpcshell-something-or-other@mozilla.org": {
bootstrapped: true,
dependencies: [],
enabled: true,
hasEmbeddedWebExtension: false,
lastModifiedTime: 1,
path: "/home/xpcshell/my-extensions/something-or-other",
version: "0.0.0",
},
},
checkStartupModifications: true,
path: "/home/xpcshell/.mozilla/firefox/default/extensions",
},
},
{
"app-profile": {
addons: {
"xpcshell-something-or-other@mozilla.org": {
bootstrapped: true,
dependencies: [],
enabled: true,
hasEmbeddedWebExtension: false,
lastModifiedTime: 1,
path: "c:\\Users\\XpcShell\\my-extensions\\something-or-other",
version: "0.0.0",
},
},
checkStartupModifications: true,
path: "c:\\Users\\XpcShell\\Application Data\\Mozilla Firefox\\Profiles\\meh",
},
},
];
for (let startupData of startupDatasets) {
await IOUtils.writeJSON(path, startupData, { compress: true });
try {
let result = aomStartup.readStartupData();
info(`readStartupData() returned ${JSON.stringify(result)}`);
} catch (e) {
// We don't care if this throws, only that it doesn't crash.
info(`readStartupData() threw: ${e}`);
equal(
e.result,
Cr.NS_ERROR_FILE_UNRECOGNIZED_PATH,
"Got expected error code"
);
}
}
});