Bug 1797050 - Part 8 - Add test coverage for the deprecated manifest.json key "applications". r=rpl

Depends on D160248

Differential Revision: https://phabricator.services.mozilla.com/D160726
This commit is contained in:
William Durand
2022-11-04 19:09:02 +00:00
parent e99b36b080
commit b31856e2ae
3 changed files with 210 additions and 93 deletions

View File

@@ -103,96 +103,3 @@ add_task(async function test_action_version() {
`Manifest v2 with "action" key first warning is clear.`
);
});
add_task(async function test_mv2_scripting_permission_always_enabled() {
let warnings = await testManifest({
manifest_version: 2,
permissions: ["scripting"],
});
Assert.deepEqual(warnings, [], "Got no warnings");
});
add_task(async function test_mv3_scripting_permission_always_enabled() {
let warnings = await testManifest({
manifest_version: 3,
permissions: ["scripting"],
});
Assert.deepEqual(warnings, [], "Got no warnings");
});
add_task(async function test_simpler_version_format() {
const TEST_CASES = [
// Valid cases
{ version: "0", expectWarning: false },
{ version: "0.0", expectWarning: false },
{ version: "0.0.0", expectWarning: false },
{ version: "0.0.0.0", expectWarning: false },
{ version: "0.0.0.1", expectWarning: false },
{ version: "0.0.0.999999999", expectWarning: false },
{ version: "0.0.1.0", expectWarning: false },
{ version: "0.0.999999999", expectWarning: false },
{ version: "0.1.0.0", expectWarning: false },
{ version: "0.999999999", expectWarning: false },
{ version: "1", expectWarning: false },
{ version: "1.0", expectWarning: false },
{ version: "1.0.0", expectWarning: false },
{ version: "1.0.0.0", expectWarning: false },
{ version: "1.2.3.4", expectWarning: false },
{ version: "999999999", expectWarning: false },
{
version: "999999999.999999999.999999999.999999999",
expectWarning: false,
},
// Invalid cases
{ version: ".", expectWarning: true },
{ version: ".999999999", expectWarning: true },
{ version: "0.0.0.0.0", expectWarning: true },
{ version: "0.0.0.00001", expectWarning: true },
{ version: "0.0.0.0010", expectWarning: true },
{ version: "0.0.00001", expectWarning: true },
{ version: "0.0.001", expectWarning: true },
{ version: "0.0.01.0", expectWarning: true },
{ version: "0.01.0", expectWarning: true },
{ version: "00001", expectWarning: true },
{ version: "0001", expectWarning: true },
{ version: "001", expectWarning: true },
{ version: "01", expectWarning: true },
{ version: "01.0", expectWarning: true },
{ version: "099999", expectWarning: true },
{ version: "0999999999", expectWarning: true },
{ version: "1.00000", expectWarning: true },
{ version: "1.1.-1", expectWarning: true },
{ version: "1.1000000000", expectWarning: true },
{ version: "1.1pre1aa", expectWarning: true },
{ version: "1.2.1000000000", expectWarning: true },
{ version: "1.2.3.4-a", expectWarning: true },
{ version: "1.2.3.4.5", expectWarning: true },
{ version: "1000000000", expectWarning: true },
{ version: "1000000000.0.0.0", expectWarning: true },
{ version: "999999999.", expectWarning: true },
];
for (const { version, expectWarning } of TEST_CASES) {
const normalized = await ExtensionTestUtils.normalizeManifest({ version });
if (expectWarning) {
Assert.deepEqual(
normalized.errors,
[
`Warning processing version: version must be a version string ` +
`consisting of at most 4 integers of at most 9 digits without ` +
`leading zeros, and separated with dots`,
],
`expected warning for version: ${version}`
);
} else {
Assert.deepEqual(
normalized.errors,
[],
`expected no warning for version: ${version}`
);
}
}
});