mirror of
				https://github.com/mozilla/gecko-dev.git
				synced 2025-11-04 10:18:41 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			80 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
	
		
			2.6 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";
 | 
						|
 | 
						|
add_setup(async () => {
 | 
						|
  // Bug 1968055 - Temporarily enabled pocket pref while we remove the pref entirely
 | 
						|
  await SpecialPowers.pushPrefEnv({
 | 
						|
    set: [["extensions.pocket.enabled", true]],
 | 
						|
  });
 | 
						|
});
 | 
						|
 | 
						|
/**
 | 
						|
 * These tests check that the remote attribute is true for remote panels.
 | 
						|
 * This attribute is needed for Mac to properly render the panel.
 | 
						|
 */
 | 
						|
add_task(async function check_remote_attribute() {
 | 
						|
  // The panel is created on the fly, so we can't simply wait for focus
 | 
						|
  // inside it.
 | 
						|
  //let pocketPanelShown = BrowserTestUtils.waitForEvent(
 | 
						|
  //  document,
 | 
						|
  //  "popupshown",
 | 
						|
  //  true
 | 
						|
  //);
 | 
						|
  let pocketPanelShown = popupShown(document);
 | 
						|
  // Using Pocket panel as it's an available remote panel.
 | 
						|
  let pocketButton = document.getElementById("save-to-pocket-button");
 | 
						|
  pocketButton.click();
 | 
						|
  await pocketPanelShown;
 | 
						|
 | 
						|
  let pocketPanel = document.getElementById("customizationui-widget-panel");
 | 
						|
  is(
 | 
						|
    pocketPanel.getAttribute("remote"),
 | 
						|
    "true",
 | 
						|
    "Pocket panel has remote attribute"
 | 
						|
  );
 | 
						|
 | 
						|
  // Close panel and cleanup.
 | 
						|
  let pocketPanelHidden = popupHidden(pocketPanel);
 | 
						|
  pocketPanel.hidePopup();
 | 
						|
  await pocketPanelHidden;
 | 
						|
});
 | 
						|
 | 
						|
add_task(async function check_remote_attribute_overflow() {
 | 
						|
  let win = await BrowserTestUtils.openNewBrowserWindow();
 | 
						|
  let overflowPanel = win.document.getElementById("widget-overflow");
 | 
						|
  overflowPanel.setAttribute("animate", "false");
 | 
						|
 | 
						|
  // Force a narrow window to get an overflow toolbar.
 | 
						|
  win.resizeTo(kForceOverflowWidthPx, win.outerHeight);
 | 
						|
  let navbar = win.document.getElementById(CustomizableUI.AREA_NAVBAR);
 | 
						|
  await TestUtils.waitForCondition(() => navbar.hasAttribute("overflowing"));
 | 
						|
 | 
						|
  // Open the overflow panel view.
 | 
						|
  let overflowPanelShown = popupShown(overflowPanel);
 | 
						|
  let overflowPanelButton = win.document.getElementById(
 | 
						|
    "nav-bar-overflow-button"
 | 
						|
  );
 | 
						|
  overflowPanelButton.click();
 | 
						|
  await overflowPanelShown;
 | 
						|
 | 
						|
  // Using Pocket panel as it's an available remote panel.
 | 
						|
  let pocketButton = win.document.getElementById("save-to-pocket-button");
 | 
						|
  pocketButton.click();
 | 
						|
  await BrowserTestUtils.waitForEvent(win.document, "ViewShown");
 | 
						|
 | 
						|
  is(
 | 
						|
    overflowPanel.getAttribute("remote"),
 | 
						|
    "true",
 | 
						|
    "Pocket overflow panel has remote attribute"
 | 
						|
  );
 | 
						|
 | 
						|
  // Close panel and cleanup.
 | 
						|
  let overflowPanelHidden = popupHidden(overflowPanel);
 | 
						|
  overflowPanel.hidePopup();
 | 
						|
  await overflowPanelHidden;
 | 
						|
  overflowPanel.removeAttribute("animate");
 | 
						|
  await BrowserTestUtils.closeWindow(win);
 | 
						|
});
 |