Bug 1240875 - Register temporary addons with AddonPathService, r=mossop

--HG--
extra : rebase_source : f6ed180d916220d886a9efb4fcdd8f1b96061a73
This commit is contained in:
Andrew Halberstadt 2016-01-19 15:16:18 -05:00
parent d7d6c573c8
commit 473e8f3eae
2 changed files with 31 additions and 0 deletions

View File

@ -3893,6 +3893,7 @@ this.XPIProvider = {
let file = addon._sourceBundle;
XPIProvider._addURIMapping(addon.id, file);
XPIProvider.callBootstrapMethod(addon, file, "install",
BOOTSTRAP_REASONS.ADDON_INSTALL);
addon.state = AddonManager.STATE_INSTALLED;

View File

@ -246,8 +246,38 @@ function run_test_7() {
let uri = b1.getResourceURI(".");
check_mapping(uri, b1.id);
do_execute_soon(run_test_8);
});
}
// Tests that temporary addon-on URIs are mappable after install and uninstall
function run_test_8() {
prepare_test({
"bootstrap2@tests.mozilla.org": [
["onInstalling", false],
"onInstalled"
]
}, [
"onExternalInstall",
], function(b2) {
let uri = b2.getResourceURI(".");
check_mapping(uri, b2.id);
prepare_test({
"bootstrap2@tests.mozilla.org": [
["onUninstalling", false],
"onUninstalled"
]
});
b2.uninstall();
ensure_test_completed();
check_mapping(uri, b2.id);
do_execute_soon(run_test_invalidarg);
});
AddonManager.installTemporaryAddon(do_get_addon("test_bootstrap2_1"));
}
// Tests that the AddonManager will bail when mapURIToAddonID is called with an