fune/browser/components/uitour/test/browser_UITour5.js
Paolo Amadini 2d4d390d41 Bug 1441284 - Part 1 - Remove the "current" property. r=Gijs
MozReview-Commit-ID: GyqI8N3JQ9O

--HG--
extra : rebase_source : c2ac400d601c259ce17852a85d01230355885454
2018-02-26 18:36:59 +00:00

41 lines
1.7 KiB
JavaScript

"use strict";
var gTestTab;
var gContentAPI;
var gContentWindow;
add_task(setup_UITourTest);
add_UITour_task(async function test_highlight_library_and_show_library_subview() {
let highlight = document.getElementById("UITourHighlight");
is_element_hidden(highlight, "Highlight should initially be hidden");
// Test highlighting the library button
let appMenu = PanelUI.panel;
let appMenuShownPromise = promisePanelElementShown(window, appMenu);
let highlightVisiblePromise = elementVisiblePromise(highlight, "Should show highlight");
gContentAPI.showHighlight("library");
await appMenuShownPromise;
await highlightVisiblePromise;
is(appMenu.state, "open", "Should open the app menu to highlight the library button");
is(getShowHighlightTargetName(), "library", "Should highlight the library button on the app menu");
// Click the library button to show the subview
let ViewShownPromise = new Promise(resolve => {
appMenu.addEventListener("ViewShown", resolve, { once: true });
});
let highlightHiddenPromise = elementHiddenPromise(highlight, "Should hide highlight");
let libraryBtn = document.getElementById("appMenu-library-button");
libraryBtn.dispatchEvent(new Event("command"));
await highlightHiddenPromise;
await ViewShownPromise;
let libView = document.getElementById("appMenu-libraryView");
ok(PanelView.forNode(libView).active, "Should show the library subview");
is(appMenu.state, "open", "Should still open the app menu for the library subview");
// Clean up
let appMenuHiddenPromise = promisePanelElementHidden(window, appMenu);
gContentAPI.hideMenu("appMenu");
await appMenuHiddenPromise;
is(appMenu.state, "closed", "Should close the app menu");
});