summaryrefslogtreecommitdiffstats
path: root/browser/base/content/test/tabs/browser_tab_manager_visibility.js
diff options
context:
space:
mode:
Diffstat (limited to 'browser/base/content/test/tabs/browser_tab_manager_visibility.js')
-rw-r--r--browser/base/content/test/tabs/browser_tab_manager_visibility.js53
1 files changed, 53 insertions, 0 deletions
diff --git a/browser/base/content/test/tabs/browser_tab_manager_visibility.js b/browser/base/content/test/tabs/browser_tab_manager_visibility.js
new file mode 100644
index 0000000000..b7de777512
--- /dev/null
+++ b/browser/base/content/test/tabs/browser_tab_manager_visibility.js
@@ -0,0 +1,53 @@
+/**
+ * Test the Tab Manager visibility respects browser.tabs.tabmanager.enabled preference
+ * */
+
+"use strict";
+
+// The hostname for the test URIs.
+const TEST_HOSTNAME = "https://example.com";
+const DUMMY_PAGE_PATH = "/browser/base/content/test/tabs/dummy_page.html";
+
+add_task(async function tab_manager_visibility_preference_on() {
+ Services.prefs.setBoolPref("browser.tabs.tabmanager.enabled", true);
+
+ let newWindow = await BrowserTestUtils.openNewBrowserWindow();
+ await BrowserTestUtils.withNewTab(
+ {
+ gBrowser: newWindow.gBrowser,
+ url: TEST_HOSTNAME + DUMMY_PAGE_PATH,
+ },
+ async function (browser) {
+ await Assert.ok(
+ BrowserTestUtils.isVisible(
+ newWindow.document.getElementById("alltabs-button")
+ ),
+ "tab manage menu is visible when browser.tabs.tabmanager.enabled preference is set to true"
+ );
+ }
+ );
+ Services.prefs.clearUserPref("browser.tabs.tabmanager.enabled");
+ BrowserTestUtils.closeWindow(newWindow);
+});
+
+add_task(async function tab_manager_visibility_preference_off() {
+ Services.prefs.setBoolPref("browser.tabs.tabmanager.enabled", false);
+
+ let newWindow = await BrowserTestUtils.openNewBrowserWindow();
+ await BrowserTestUtils.withNewTab(
+ {
+ gBrowser: newWindow.gBrowser,
+ url: TEST_HOSTNAME + DUMMY_PAGE_PATH,
+ },
+ async function (browser) {
+ await Assert.ok(
+ BrowserTestUtils.isHidden(
+ newWindow.document.getElementById("alltabs-button")
+ ),
+ "tab manage menu is hidden when browser.tabs.tabmanager.enabled preference is set to true"
+ );
+ }
+ );
+ Services.prefs.clearUserPref("browser.tabs.tabmanager.enabled");
+ BrowserTestUtils.closeWindow(newWindow);
+});