Bug 1433334 - Add installTelemetryInfo to addon installed from EnterprisePolicies.
MozReview-Commit-ID: Fe1ZObda2N3
--- a/browser/components/enterprisepolicies/Policies.jsm
+++ b/browser/components/enterprisepolicies/Policies.jsm
@@ -423,17 +423,18 @@ var Policies = {
try {
xpiFile.initWithPath(location);
} catch (e) {
log.error(`Invalid extension path location - ${location}`);
continue;
}
url = Services.io.newFileURI(xpiFile).spec;
}
- AddonManager.getInstallForURL(url, "application/x-xpinstall").then(install => {
+ AddonManager.getInstallForURL(url, "application/x-xpinstall", null, null, null, null, null,
+ {source: "enterprise-policy"}).then(install => {
if (install.addon && install.addon.appDisabled) {
log.error(`Incompatible add-on - ${location}`);
install.cancel();
return;
}
let listener = {
/* eslint-disable-next-line no-shadow */
onDownloadEnded: (install) => {
--- a/browser/components/enterprisepolicies/tests/browser/browser_policy_extensions.js
+++ b/browser/components/enterprisepolicies/tests/browser/browser_policy_extensions.js
@@ -16,16 +16,19 @@ add_task(async function test_addon_insta
addonID
]
}
}
});
await installPromise;
let addon = await AddonManager.getAddonByID(addonID);
isnot(addon, null, "Addon not installed.");
+
+ Assert.deepEqual(addon.installTelemetryInfo, {source: "enterprise-policy"},
+ "Got the expected addon.installTelemetryInfo");
});
add_task(async function test_addon_locked() {
let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser);
await BrowserOpenAddonsMgr("addons://list/extension");
// eslint-disable-next-line no-shadow
await ContentTask.spawn(tab.linkedBrowser, {addonID}, async function({addonID}) {
let list = content.document.getElementById("addon-list");