gecko-dev/toolkit/components/extensions/test/xpcshell/test_ext_management.js
Kris Maglione a15a869f4f Bug 1525762: Part 2a - Migrate built-in LWTs to static WebExtension themes. r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D24627

--HG--
rename : browser/base/content/defaultthemes/dark.icon.svg => browser/themes/addons/dark/icon.svg
rename : browser/base/content/defaultthemes/light.icon.svg => browser/themes/addons/light/icon.svg
rename : toolkit/mozapps/extensions/content/default-theme-icon.svg => toolkit/mozapps/extensions/default-theme/icon.svg
extra : rebase_source : a844186d5a113b596c6bb6bdcd49f443e1879ab2
extra : histedit_source : a5b745dcdac9106fe224895d13862b156feb1eb0
2019-02-08 14:18:52 -08:00

73 lines
2.2 KiB
JavaScript

/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
/* vim: set sts=2 sw=2 et tw=80: */
"use strict";
AddonTestUtils.init(this);
add_task(async function setup() {
await ExtensionTestUtils.startAddonManager();
});
add_task(async function test_management_getAll() {
const id1 = "get_all_test1@tests.mozilla.com";
const id2 = "get_all_test2@tests.mozilla.com";
function getManifest(id) {
return {
applications: {
gecko: {
id,
},
},
name: id,
version: "1.0",
short_name: id,
permissions: ["management"],
};
}
async function background() {
browser.test.onMessage.addListener(async (msg, id) => {
let addon = await browser.management.get(id);
browser.test.sendMessage("addon", addon);
});
let addons = await browser.management.getAll();
browser.test.assertEq(2, addons.length, "management.getAll returned correct number of add-ons.");
browser.test.sendMessage("addons", addons);
}
let extension1 = ExtensionTestUtils.loadExtension({
manifest: getManifest(id1),
useAddonManager: "temporary",
});
let extension2 = ExtensionTestUtils.loadExtension({
manifest: getManifest(id2),
background,
useAddonManager: "temporary",
});
await extension1.startup();
await extension2.startup();
let addons = await extension2.awaitMessage("addons");
for (let id of [id1, id2]) {
let addon = addons.find(a => { return a.id === id; });
equal(addon.name, id, `The extension with id ${id} was returned by getAll.`);
equal(addon.shortName, id, "Additional extension metadata was correct");
}
extension2.sendMessage("getAddon", id1);
let addon = await extension2.awaitMessage("addon");
equal(addon.name, id1, `The extension with id ${id1} was returned by get.`);
equal(addon.shortName, id1, "Additional extension metadata was correct");
extension2.sendMessage("getAddon", id2);
addon = await extension2.awaitMessage("addon");
equal(addon.name, id2, `The extension with id ${id2} was returned by get.`);
equal(addon.shortName, id2, "Additional extension metadata was correct");
await extension2.unload();
await extension1.unload();
});