Bug 1440358 - Part 3 - Add tests for reopening a visible Library view. r=Gijs
MozReview-Commit-ID: 3sJDnzUWFbz
--- a/browser/components/customizableui/test/browser.ini
+++ b/browser/components/customizableui/test/browser.ini
@@ -136,16 +136,17 @@ skip-if = os == "mac"
[browser_currentset_post_reset.js]
[browser_customizemode_contextmenu_menubuttonstate.js]
[browser_customizemode_dragspace.js]
skip-if = os == "linux" # linux doesn't get drag space (no tabsintitlebar)
[browser_customizemode_uidensity.js]
[browser_drag_outside_palette.js]
[browser_exit_background_customize_mode.js]
[browser_insert_before_moved_node.js]
+[browser_library_after_appMenu.js]
[browser_overflow_use_subviews.js]
[browser_panel_keyboard_navigation.js]
[browser_panel_toggle.js]
[browser_panelUINotifications.js]
[browser_panelUINotifications_fullscreen.js]
tags = fullscreen
skip-if = os == "mac"
[browser_panelUINotifications_fullscreen_noAutoHideToolbar.js]
new file mode 100644
--- /dev/null
+++ b/browser/components/customizableui/test/browser_library_after_appMenu.js
@@ -0,0 +1,39 @@
+/* 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/. */
+
+/**
+ * Checks that opening the Library view using the default toolbar button works
+ * also while the view is displayed in the main menu.
+ */
+
+"use strict";
+
+add_task(async function test_library_after_appMenu() {
+ await PanelUI.show();
+
+ // Show the Library view as a subview of the main menu.
+ let libraryView = document.getElementById("appMenu-libraryView");
+ let promise = BrowserTestUtils.waitForEvent(libraryView, "ViewShown");
+ document.getElementById("appMenu-library-button").click();
+ await promise;
+
+ // Show the Library view as the main view of the Library panel.
+ promise = BrowserTestUtils.waitForEvent(libraryView, "ViewShown");
+ document.getElementById("library-button").click();
+ await promise;
+
+ // Navigate to the History subview.
+ let historyView = document.getElementById("PanelUI-history");
+ promise = BrowserTestUtils.waitForEvent(historyView, "ViewShown");
+ document.getElementById("appMenu-library-history-button").click();
+ await promise;
+
+ Assert.ok(PanelView.forNode(historyView).active);
+
+ // Close the Library panel.
+ let historyPanel = historyView.closest("panel");
+ promise = BrowserTestUtils.waitForEvent(historyPanel, "popuphidden");
+ historyPanel.hidePopup();
+ await promise;
+});