gecko-dev/browser/components/customizableui/test/browser_938995_indefaultstate_nonremovable.js
Gijs 233681e912 Bug 1354082 - part 0: set prefs in all the tests that need it, r=mikedeboer
MozReview-Commit-ID: D1YDY5NvdYJ

--HG--
extra : rebase_source : 06b2b1e31efdf77b9eced71db930b6e291175e3d
extra : histedit_source : 11449e9985fea4b5f0a51fd1c73a1c41a79d66e3
2017-05-10 06:54:44 -04:00

27 lines
1.3 KiB
JavaScript

/* 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/. */
"use strict";
const kWidgetId = "test-non-removable-widget";
// Adding non-removable items to a toolbar or the panel shouldn't change inDefaultState
add_task(async function() {
await SpecialPowers.pushPrefEnv({set: [["browser.photon.structure.enabled", false]]});
await PanelUI.ensureReady();
ok(CustomizableUI.inDefaultState, "Should start in default state");
let button = createDummyXULButton(kWidgetId, "Test non-removable inDefaultState handling");
CustomizableUI.addWidgetToArea(kWidgetId, CustomizableUI.AREA_NAVBAR);
button.setAttribute("removable", "false");
ok(CustomizableUI.inDefaultState, "Should still be in default state after navbar addition");
button.remove();
button = createDummyXULButton(kWidgetId, "Test non-removable inDefaultState handling");
CustomizableUI.addWidgetToArea(kWidgetId, CustomizableUI.AREA_PANEL);
button.setAttribute("removable", "false");
ok(CustomizableUI.inDefaultState, "Should still be in default state after panel addition");
button.remove();
ok(CustomizableUI.inDefaultState, "Should be in default state after destroying both widgets");
});