forked from mirrors/gecko-dev
Add new preference `extensions.webextensions.warnings-as-errors` that defaults to `true` in tests. Tests that expect warnings are modified to briefly flip the pref for the specific part of the test that needs an exception. As part of the refactor, log entries for schema entries that contain `"onError": "warn"` will now be prefixed by "Warning" instead of "Error", to be consistent with the change from bug 1495908. Differential Revision: https://phabricator.services.mozilla.com/D40548 --HG-- extra : moz-landing-system : lando
35 lines
1 KiB
JavaScript
35 lines
1 KiB
JavaScript
/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
|
/* vim: set sts=2 sw=2 et tw=80: */
|
|
"use strict";
|
|
|
|
async function test_theme_property(property) {
|
|
let normalized = await ExtensionTestUtils.normalizeManifest(
|
|
{
|
|
theme: {
|
|
[property]: {},
|
|
},
|
|
},
|
|
"manifest.ThemeManifest"
|
|
);
|
|
|
|
if (property === "unrecognized_key") {
|
|
const expectedWarning = `Warning processing theme.${property}`;
|
|
ok(
|
|
normalized.errors[0].includes(expectedWarning),
|
|
`The manifest warning ${JSON.stringify(
|
|
normalized.errors[0]
|
|
)} must contain ${JSON.stringify(expectedWarning)}`
|
|
);
|
|
} else {
|
|
equal(normalized.errors.length, 0, "Should have a warning");
|
|
}
|
|
equal(normalized.error, undefined, "Should not have an error");
|
|
}
|
|
|
|
add_task(async function test_manifest_themes() {
|
|
await test_theme_property("images");
|
|
await test_theme_property("colors");
|
|
ExtensionTestUtils.failOnSchemaWarnings(false);
|
|
await test_theme_property("unrecognized_key");
|
|
ExtensionTestUtils.failOnSchemaWarnings(true);
|
|
});
|