fune/devtools/client/aboutdebugging-new/test/browser/browser_aboutdebugging_addons_warnings.js
Julian Descottes 46014b798f Bug 1500375 - Switch to XPI based helper to install fake extensions;r=daisuke,Ola
Depends on D17054

The previous version only relied on a manifest, but it's not really flexible.
The XPI approach allows to define background scripts, which can be useful for
more tests.

Note: the old about:debugging supports both the manifest and the XPI approaches
but we should try to keep only one here to make it less complicated to write new
tests.

Differential Revision: https://phabricator.services.mozilla.com/D17055

--HG--
extra : moz-landing-system : lando
2019-01-29 15:07:35 +00:00

37 lines
1.3 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
/* import-globals-from helper-addons.js */
Services.scriptloader.loadSubScript(CHROME_URL_ROOT + "helper-addons.js", this);
// Test that extension warnings are displayed in about:debugging.
add_task(async function() {
const EXTENSION_NAME = "Temporary web extension";
const EXTENSION_ID = "test-devtools@mozilla.org";
const { document, tab } = await openAboutDebugging();
await installTemporaryExtensionFromXPI({
id: EXTENSION_ID,
name: EXTENSION_NAME,
extraProperties: {
// This property is not expected in the manifest and should trigger a warning!
"wrongProperty": {},
},
}, document);
info("Wait until a debug target item appears");
await waitUntil(() => findDebugTargetByText(EXTENSION_NAME, document));
const target = findDebugTargetByText(EXTENSION_NAME, document);
const warningMessage = target.querySelector(".js-message");
ok(!!warningMessage, "A warning message is displayed for the installed addon");
const warningText = warningMessage.textContent;
ok(warningText.includes("wrongProperty"), "The warning message mentions wrongProperty");
await removeTemporaryExtension(EXTENSION_NAME, document);
await removeTab(tab);
});