summaryrefslogtreecommitdiffstats
path: root/browser/components/customizableui/test/browser_993322_widget_notoolbar.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/customizableui/test/browser_993322_widget_notoolbar.js')
-rw-r--r--browser/components/customizableui/test/browser_993322_widget_notoolbar.js59
1 files changed, 59 insertions, 0 deletions
diff --git a/browser/components/customizableui/test/browser_993322_widget_notoolbar.js b/browser/components/customizableui/test/browser_993322_widget_notoolbar.js
new file mode 100644
index 0000000000..5e6cc65585
--- /dev/null
+++ b/browser/components/customizableui/test/browser_993322_widget_notoolbar.js
@@ -0,0 +1,59 @@
+/* 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 BUTTONID = "test-API-created-widget-toolbar-gone";
+const TOOLBARID = "test-API-created-extra-toolbar";
+
+add_task(async function () {
+ let toolbar = createToolbarWithPlacements(TOOLBARID, []);
+ CustomizableUI.addWidgetToArea(BUTTONID, TOOLBARID);
+ is(
+ CustomizableUI.getPlacementOfWidget(BUTTONID).area,
+ TOOLBARID,
+ "Should be on toolbar"
+ );
+ is(toolbar.children.length, 0, "Toolbar has no kid");
+
+ CustomizableUI.unregisterArea(TOOLBARID);
+ CustomizableUI.createWidget({
+ id: BUTTONID,
+ label: "Test widget toolbar gone",
+ });
+
+ let currentWidget = CustomizableUI.getWidget(BUTTONID);
+
+ await startCustomizing();
+ let buttonNode = document.getElementById(BUTTONID);
+ ok(buttonNode, "Should find button in window");
+ if (buttonNode) {
+ is(
+ buttonNode.parentNode.localName,
+ "toolbarpaletteitem",
+ "Node should be wrapped"
+ );
+ is(
+ buttonNode.parentNode.getAttribute("place"),
+ "palette",
+ "Node should be in palette"
+ );
+ is(
+ buttonNode,
+ gNavToolbox.palette.querySelector("#" + BUTTONID),
+ "Node should really be in palette."
+ );
+ }
+ is(
+ currentWidget.forWindow(window).node,
+ buttonNode,
+ "Should have the same node for customize mode"
+ );
+ await endCustomizing();
+
+ CustomizableUI.destroyWidget(BUTTONID);
+ CustomizableUI.unregisterArea(TOOLBARID, true);
+ toolbar.remove();
+ gAddedToolbars.clear();
+});