mirror of
				https://github.com/mozilla/gecko-dev.git
				synced 2025-11-04 10:18:41 +02:00 
			
		
		
		
	Renames all instances of the snake_case identifier to camelCase to match more closely to idiomatic JavaScript and to existing conventions throughout the code base. Differential Revision: https://phabricator.services.mozilla.com/D198826
		
			
				
	
	
		
			83 lines
		
	
	
	
		
			2.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
	
		
			2.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/* Any copyright is dedicated to the Public Domain.
 | 
						|
 * http://creativecommons.org/publicdomain/zero/1.0/ */
 | 
						|
 | 
						|
"use strict";
 | 
						|
 | 
						|
async function emptyToolbarMessageVisible(visible, win = window) {
 | 
						|
  info("Empty toolbar message should be " + (visible ? "visible" : "hidden"));
 | 
						|
  let emptyMessage = win.document.getElementById("personal-toolbar-empty");
 | 
						|
  await BrowserTestUtils.waitForMutationCondition(
 | 
						|
    emptyMessage,
 | 
						|
    { attributes: true, attributeFilter: ["hidden"] },
 | 
						|
    () => emptyMessage.hidden != visible
 | 
						|
  );
 | 
						|
}
 | 
						|
 | 
						|
add_task(async function empty_message_on_non_empty_bookmarks_toolbar() {
 | 
						|
  await resetCustomization();
 | 
						|
  ok(CustomizableUI.inDefaultState, "Default state to begin");
 | 
						|
 | 
						|
  await SpecialPowers.pushPrefEnv({
 | 
						|
    set: [["browser.toolbars.bookmarks.visibility", "always"]],
 | 
						|
  });
 | 
						|
 | 
						|
  CustomizableUI.removeWidgetFromArea("import-button");
 | 
						|
  CustomizableUI.removeWidgetFromArea("personal-bookmarks");
 | 
						|
  CustomizableUI.addWidgetToArea(
 | 
						|
    "bookmarks-menu-button",
 | 
						|
    CustomizableUI.AREA_BOOKMARKS,
 | 
						|
    0
 | 
						|
  );
 | 
						|
 | 
						|
  let newWin = await BrowserTestUtils.openNewBrowserWindow();
 | 
						|
  let doc = newWin.document;
 | 
						|
  ok(
 | 
						|
    BrowserTestUtils.isVisible(doc.getElementById("PersonalToolbar")),
 | 
						|
    "Personal toolbar should be visible"
 | 
						|
  );
 | 
						|
  ok(
 | 
						|
    doc.getElementById("personal-toolbar-empty").hidden,
 | 
						|
    "Empty message should be hidden"
 | 
						|
  );
 | 
						|
 | 
						|
  await BrowserTestUtils.closeWindow(newWin);
 | 
						|
  await resetCustomization();
 | 
						|
});
 | 
						|
 | 
						|
add_task(async function empty_message_after_customization() {
 | 
						|
  // ensure There's something on the toolbar.
 | 
						|
  let bm = await PlacesUtils.bookmarks.insert({
 | 
						|
    url: "https://mozilla.org/",
 | 
						|
    title: "test",
 | 
						|
    parentGuid: PlacesUtils.bookmarks.toolbarGuid,
 | 
						|
  });
 | 
						|
  registerCleanupFunction(() => PlacesUtils.bookmarks.remove(bm));
 | 
						|
  ok(CustomizableUI.inDefaultState, "Default state to begin");
 | 
						|
 | 
						|
  // Open window with a visible toolbar.
 | 
						|
  await SpecialPowers.pushPrefEnv({
 | 
						|
    set: [["browser.toolbars.bookmarks.visibility", "always"]],
 | 
						|
  });
 | 
						|
  let newWin = await BrowserTestUtils.openNewBrowserWindow();
 | 
						|
  let doc = newWin.document;
 | 
						|
  let toolbar = doc.getElementById("PersonalToolbar");
 | 
						|
  ok(BrowserTestUtils.isVisible(toolbar), "Personal toolbar should be visible");
 | 
						|
  await emptyToolbarMessageVisible(false, newWin);
 | 
						|
 | 
						|
  // Force a Places view uninit through customization.
 | 
						|
  CustomizableUI.removeWidgetFromArea("personal-bookmarks");
 | 
						|
  await resetCustomization();
 | 
						|
  // Show the toolbar again.
 | 
						|
  setToolbarVisibility(toolbar, true, false, false);
 | 
						|
  ok(BrowserTestUtils.isVisible(toolbar), "Personal toolbar should be visible");
 | 
						|
  // Wait for bookmarks to be visible.
 | 
						|
  let placesItems = doc.getElementById("PlacesToolbarItems");
 | 
						|
  await BrowserTestUtils.waitForMutationCondition(
 | 
						|
    placesItems,
 | 
						|
    { childList: true },
 | 
						|
    () => placesItems.childNodes.length
 | 
						|
  );
 | 
						|
  await emptyToolbarMessageVisible(false, newWin);
 | 
						|
 | 
						|
  await BrowserTestUtils.closeWindow(newWin);
 | 
						|
});
 |