Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test gets skipped with pattern: os == 'linux' && os_version == '18.04' && !debug && verify
- Manifest: browser/components/uitour/test/browser.toml
"use strict";
var gTestTab;
var gContentAPI;
add_task(setup_UITourTest);
// Test that a reset profile dialog appears when "resetFirefox" event is triggered
add_UITour_task(async function test_resetFirefox() {
let canReset = await getConfigurationPromise("canReset");
ok(
!canReset,
"Shouldn't be able to reset from mochitest's temporary profile."
);
let dialogPromise = BrowserTestUtils.promiseAlertDialog(
"cancel",
"chrome://global/content/resetProfile.xhtml",
{
isSubDialog: true,
}
);
// make reset possible.
let profileService = Cc["@mozilla.org/toolkit/profile-service;1"].getService(
Ci.nsIToolkitProfileService
);
let currentProfileDir = Services.dirsvc.get("ProfD", Ci.nsIFile);
let profileName = "mochitest-test-profile-temp-" + Date.now();
let tempProfile = profileService.createProfile(
currentProfileDir,
profileName
);
canReset = await getConfigurationPromise("canReset");
ok(
canReset,
"Should be able to reset from mochitest's temporary profile once it's in the profile manager."
);
await gContentAPI.resetFirefox();
await dialogPromise;
tempProfile.remove(false);
canReset = await getConfigurationPromise("canReset");
ok(
!canReset,
"Shouldn't be able to reset from mochitest's temporary profile once removed from the profile manager."
);
});