diff options
author | Matt A. Tobin <email@mattatobin.com> | 2018-02-10 04:00:58 -0500 |
---|---|---|
committer | Matt A. Tobin <email@mattatobin.com> | 2018-02-10 04:00:58 -0500 |
commit | deea787c2efbb9c89caec8d9efc023ffafe75613 (patch) | |
tree | 6dbe55f7d24e67ecdcc821b8c5492f6c17217852 /toolkit/mozapps/extensions/test/xpcshell/test_dataDirectory.js | |
parent | 37d5300335d81cecbecc99812747a657588c63eb (diff) | |
download | UXP-deea787c2efbb9c89caec8d9efc023ffafe75613.tar UXP-deea787c2efbb9c89caec8d9efc023ffafe75613.tar.gz UXP-deea787c2efbb9c89caec8d9efc023ffafe75613.tar.lz UXP-deea787c2efbb9c89caec8d9efc023ffafe75613.tar.xz UXP-deea787c2efbb9c89caec8d9efc023ffafe75613.zip |
Import Tycho's Add-on Manager
Diffstat (limited to 'toolkit/mozapps/extensions/test/xpcshell/test_dataDirectory.js')
-rw-r--r-- | toolkit/mozapps/extensions/test/xpcshell/test_dataDirectory.js | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/toolkit/mozapps/extensions/test/xpcshell/test_dataDirectory.js b/toolkit/mozapps/extensions/test/xpcshell/test_dataDirectory.js new file mode 100644 index 000000000..99babc722 --- /dev/null +++ b/toolkit/mozapps/extensions/test/xpcshell/test_dataDirectory.js @@ -0,0 +1,50 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +// Disables security checking our updates which haven't been signed +Services.prefs.setBoolPref("extensions.checkUpdateSecurity", false); + +var ADDON = { + id: "datadirectory1@tests.mozilla.org", + addon: "test_data_directory" +}; + +var expectedDir = gProfD.clone(); +expectedDir.append("extension-data"); +expectedDir.append(ADDON.id); + +function run_test() { + do_test_pending(); + do_check_false(expectedDir.exists()); + + createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "2", "1.9"); + startupManager(); + + installAllFiles([do_get_addon(ADDON.addon)], function() { + restartManager(); + + AddonManager.getAddonByID(ADDON.id, function(item) { + item.getDataDirectory(promise_callback); + }); + }); +} + +function promise_callback() { + do_check_eq(arguments.length, 2); + var expectedDir = gProfD.clone(); + expectedDir.append("extension-data"); + expectedDir.append(ADDON.id); + + do_check_eq(arguments[0], expectedDir.path); + do_check_true(expectedDir.exists()); + do_check_true(expectedDir.isDirectory()); + + do_check_eq(arguments[1], null); + + // Cleanup. + expectedDir.parent.remove(true); + + do_test_finished(); +} |