Bug 1390260 - remove old customize test, add test that checks it works in main window, r?mkaply draft
authorGijs Kruitbosch <gijskruitbosch@gmail.com>
Tue, 15 Aug 2017 17:42:16 +0100
changeset 646665 b9cd32b0084084fbf9a6a7d431b5c7659c6e2e1b
parent 646528 f627a536ceddeb4b50345ba661158723b5fe653b
child 726320 c8ecda5775441e53ee55540c65fc00e984b014ff
push id74202
push usergijskruitbosch@gmail.com
push dateTue, 15 Aug 2017 16:42:27 +0000
reviewersmkaply
bugs1390260
milestone57.0a1
Bug 1390260 - remove old customize test, add test that checks it works in main window, r?mkaply MozReview-Commit-ID: 9Tm8kLjxukB
browser/base/content/test/general/browser.ini
browser/base/content/test/general/browser_bug422590.js
browser/components/customizableui/test/browser.ini
browser/components/customizableui/test/browser_open_from_popup.js
--- a/browser/base/content/test/general/browser.ini
+++ b/browser/base/content/test/general/browser.ini
@@ -126,18 +126,16 @@ skip-if = true # browser_bug321000.js is
 [browser_bug413915.js]
 # DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
 [browser_bug416661.js]
 # DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
 [browser_bug417483.js]
 # DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
 [browser_bug419612.js]
 # DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
-[browser_bug422590.js]
-# DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
 [browser_bug423833.js]
 skip-if = true # bug 428712
 # DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
 [browser_bug424101.js]
 # DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
 [browser_bug427559.js]
 # DO NOT ADD MORE TESTS HERE. USE A TOPICAL DIRECTORY INSTEAD.
 [browser_bug431826.js]
deleted file mode 100644
--- a/browser/base/content/test/general/browser_bug422590.js
+++ /dev/null
@@ -1,59 +0,0 @@
-function test() {
-  waitForExplicitFinish();
-
-  // test a normal browser window
-  var newWin = openDialog(getBrowserURL(), "_blank", "chrome,all,dialog=no", "about:blank");
-  ok(newWin, "got new normal window");
-
-  whenDelayedStartupFinished(newWin, function() {
-    testCustomize(newWin, function() {
-      newWin.close();
-      testChromeless();
-    });
-  });
-}
-
-function testChromeless() {
-  // test a chromeless window
-  var newWin = openDialog(getBrowserURL(), "_blank",
-                          "chrome,dialog=no,location=yes,toolbar=no", "about:blank");
-  ok(newWin, "got new window");
-
-  whenDelayedStartupFinished(newWin, function() {
-    // Check that the search bar is hidden
-    var searchBar = newWin.BrowserSearch.searchBar;
-    ok(searchBar, "got search bar");
-
-    var searchBarBO = searchBar.boxObject;
-    is(searchBarBO.width, 0, "search bar hidden");
-    is(searchBarBO.height, 0, "search bar hidden");
-
-    testCustomize(newWin, function() {
-      newWin.close();
-      finish();
-    });
-  });
-}
-
-function testCustomize(aWindow, aCallback) {
-  var fileMenu = aWindow.document.getElementById("file-menu");
-  ok(fileMenu, "got file menu");
-  is(fileMenu.disabled, false, "file menu initially enabled");
-
-  openToolbarCustomizationUI(function() {
-    // Can't use the property, since the binding may have since been removed
-    // if the element is hidden (see bug 422590)
-    is(fileMenu.getAttribute("disabled"), "true",
-       "file menu is disabled during toolbar customization");
-
-    closeToolbarCustomizationUI(onClose, aWindow);
-  }, aWindow);
-
-  function onClose() {
-    is(fileMenu.getAttribute("disabled"), "false",
-       "file menu is enabled after toolbar customization");
-
-    if (aCallback)
-      aCallback();
-  }
-}
--- a/browser/components/customizableui/test/browser.ini
+++ b/browser/components/customizableui/test/browser.ini
@@ -151,10 +151,11 @@ tags = fullscreen
 [browser_panelUINotifications_multiWindow.js]
 [browser_switch_to_customize_mode.js]
 [browser_synced_tabs_menu.js]
 [browser_backfwd_enabled_post_customize.js]
 [browser_check_tooltips_in_navbar.js]
 [browser_editcontrols_update.js]
 subsuite = clipboard
 [browser_customization_context_menus.js]
+[browser_open_from_popup.js]
 [browser_sidebar_toggle.js]
 [browser_remote_tabs_button.js]
new file mode 100644
--- /dev/null
+++ b/browser/components/customizableui/test/browser_open_from_popup.js
@@ -0,0 +1,19 @@
+"use strict";
+
+/**
+ * Check that opening customize mode in a popup opens it in the main window.
+ */
+add_task(async function open_customize_mode_from_popup() {
+  let promiseWindow = BrowserTestUtils.waitForNewWindow(true);
+  ContentTask.spawn(gBrowser.selectedBrowser, null, function() {
+    content.window.open("about:blank", "_blank", "height=300,toolbar=no");
+  });
+  let win = await promiseWindow;
+  let customizePromise = BrowserTestUtils.waitForEvent(gNavToolbox, "customizationready");
+  win.gCustomizeMode.enter();
+  await customizePromise;
+  ok(document.documentElement.hasAttribute("customizing"),
+     "Should have opened customize mode in the parent window");
+  await endCustomizing();
+  await BrowserTestUtils.closeWindow(win);
+});