mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-12 02:07:33 +09:00
Move WebExtensions enabled Add-ons Manager
This commit is contained in:
parent
d7d16e7fbb
commit
358cd0404a
1100 changed files with 133 additions and 106 deletions
|
|
@ -0,0 +1,60 @@
|
|||
/* Any copyright is dedicated to the Public Domain.
|
||||
* http://creativecommons.org/publicdomain/zero/1.0/
|
||||
*/
|
||||
|
||||
function run_test() {
|
||||
createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "1", "1.9.2");
|
||||
startupManager();
|
||||
run_next_test();
|
||||
}
|
||||
|
||||
add_task(function* () {
|
||||
let profileDir = OS.Constants.Path.profileDir;
|
||||
let trashDir = OS.Path.join(profileDir, "extensions", "trash");
|
||||
let testFile = OS.Path.join(trashDir, "test.txt");
|
||||
|
||||
yield OS.File.makeDir(trashDir, {
|
||||
from: profileDir,
|
||||
ignoreExisting: true
|
||||
});
|
||||
|
||||
let trashDirExists = yield OS.File.exists(trashDir);
|
||||
ok(trashDirExists, "trash directory should have been created");
|
||||
|
||||
let file = yield OS.File.open(testFile, {create: true}, {winShare: 0});
|
||||
let fileExists = yield OS.File.exists(testFile);
|
||||
ok(fileExists, "test.txt should have been created in " + trashDir);
|
||||
|
||||
let promiseInstallStatus = new Promise((resolve, reject) => {
|
||||
let listener = {
|
||||
onInstallFailed: function() {
|
||||
AddonManager.removeInstallListener(listener);
|
||||
reject("extension installation should not have failed");
|
||||
},
|
||||
onInstallEnded: function() {
|
||||
AddonManager.removeInstallListener(listener);
|
||||
ok(true, "extension installation should not have failed");
|
||||
resolve();
|
||||
}
|
||||
};
|
||||
|
||||
AddonManager.addInstallListener(listener);
|
||||
});
|
||||
|
||||
yield promiseInstallAllFiles([do_get_addon("test_bootstrap1_1")]);
|
||||
|
||||
// The testFile should still exist at this point because we have not
|
||||
// yet closed the file handle and as a result, Windows cannot remove it.
|
||||
fileExists = yield OS.File.exists(testFile);
|
||||
ok(fileExists, "test.txt should still exist");
|
||||
|
||||
// Wait for the AddonManager to tell us if the installation of the extension
|
||||
// succeeded or not.
|
||||
yield promiseInstallStatus;
|
||||
|
||||
// Cleanup
|
||||
yield promiseShutdownManager();
|
||||
yield file.close();
|
||||
yield OS.File.remove(testFile);
|
||||
yield OS.File.removeDir(trashDir);
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue