Bug 1371479 - Update search behavior about:newtab tests to work with activity-stream.enabled true and false. r?ursula draft
authorEd Lee <edilee@mozilla.com>
Thu, 08 Jun 2017 16:44:38 -0700
changeset 591360 affb81064afff7f030bca2d51d6dc5cf5c78d90d
parent 589150 cad53f061da634a16ea75887558301b77f65745d
child 632493 1fe9d677ff5328ba6fd6100163eb3d42908c404b
push id63030
push userbmo:edilee@mozilla.com
push dateThu, 08 Jun 2017 23:47:54 +0000
reviewersursula
bugs1371479
milestone55.0a1
Bug 1371479 - Update search behavior about:newtab tests to work with activity-stream.enabled true and false. r?ursula Update tests to select the search input for either about:newtab with a querySelector instead of specific id. Also removes gSearch checks that are always false anyway with the move to e10s contentSearch. MozReview-Commit-ID: 8knCvfzA6yk
browser/components/search/test/browser_amazon_behavior.js
browser/components/search/test/browser_bing_behavior.js
browser/components/search/test/browser_ddg_behavior.js
browser/components/search/test/browser_google_behavior.js
browser/components/search/test/browser_yahoo_behavior.js
--- a/browser/components/search/test/browser_amazon_behavior.js
+++ b/browser/components/search/test/browser_amazon_behavior.js
@@ -71,18 +71,20 @@ function test() {
     },
     {
       name: "new tab search",
       searchURL: base,
       run() {
         function doSearch(doc) {
           // Re-add the listener, and perform a search
           gBrowser.addProgressListener(listener);
-          doc.getElementById("newtab-search-text").value = "foo";
-          doc.getElementById("newtab-search-submit").click();
+          let input = doc.querySelector("input[id*=search-]");
+          input.focus();
+          input.value = "foo";
+          EventUtils.synthesizeKey("VK_RETURN", {});
         }
 
         // load about:newtab, but remove the listener first so it doesn't
         // get in the way
         gBrowser.removeProgressListener(listener);
         gBrowser.loadURI("about:newtab");
         info("Waiting for about:newtab load");
         tab.linkedBrowser.addEventListener("load", function load(loadEvent) {
@@ -90,30 +92,25 @@ function test() {
               loadEvent.target.location.href == "about:blank") {
             info("skipping spurious load event");
             return;
           }
           tab.linkedBrowser.removeEventListener("load", load, true);
 
           // Observe page setup
           let win = gBrowser.contentWindowAsCPOW;
-          if (win.gSearch.currentEngineName ==
-              Services.search.currentEngine.name) {
-            doSearch(win.document);
-          } else {
-            info("Waiting for newtab search init");
-            win.addEventListener("ContentSearchService", function done(contentSearchServiceEvent) {
-              info("Got newtab search event " + contentSearchServiceEvent.detail.type);
-              if (contentSearchServiceEvent.detail.type == "State") {
-                win.removeEventListener("ContentSearchService", done);
-                // Let gSearch respond to the event before continuing.
-                executeSoon(() => doSearch(win.document));
-              }
-            });
-          }
+          info("Waiting for newtab search init");
+          win.addEventListener("ContentSearchService", function done(contentSearchServiceEvent) {
+            info("Got newtab search event " + contentSearchServiceEvent.detail.type);
+            if (contentSearchServiceEvent.detail.type == "State") {
+              win.removeEventListener("ContentSearchService", done);
+              // Let gSearch respond to the event before continuing.
+              executeSoon(() => doSearch(win.document));
+            }
+          });
         }, true);
       }
     }
   ];
 
   function nextTest() {
     if (gTests.length) {
       gCurrTest = gTests.shift();
--- a/browser/components/search/test/browser_bing_behavior.js
+++ b/browser/components/search/test/browser_bing_behavior.js
@@ -71,18 +71,20 @@ function test() {
     },
     {
       name: "new tab search",
       searchURL: base + "&form=MOZTSB",
       run() {
         function doSearch(doc) {
           // Re-add the listener, and perform a search
           gBrowser.addProgressListener(listener);
-          doc.getElementById("newtab-search-text").value = "foo";
-          doc.getElementById("newtab-search-submit").click();
+          let input = doc.querySelector("input[id*=search-]");
+          input.focus();
+          input.value = "foo";
+          EventUtils.synthesizeKey("VK_RETURN", {});
         }
 
         // load about:newtab, but remove the listener first so it doesn't
         // get in the way
         gBrowser.removeProgressListener(listener);
         gBrowser.loadURI("about:newtab");
         info("Waiting for about:newtab load");
         tab.linkedBrowser.addEventListener("load", function load(loadEvent) {
@@ -90,30 +92,25 @@ function test() {
               loadEvent.target.location.href == "about:blank") {
             info("skipping spurious load event");
             return;
           }
           tab.linkedBrowser.removeEventListener("load", load, true);
 
           // Observe page setup
           let win = gBrowser.contentWindowAsCPOW;
-          if (win.gSearch.currentEngineName ==
-              Services.search.currentEngine.name) {
-            doSearch(win.document);
-          } else {
-            info("Waiting for newtab search init");
-            win.addEventListener("ContentSearchService", function done(contentSearchServiceEvent) {
-              info("Got newtab search event " + contentSearchServiceEvent.detail.type);
-              if (contentSearchServiceEvent.detail.type == "State") {
-                win.removeEventListener("ContentSearchService", done);
-                // Let gSearch respond to the event before continuing.
-                executeSoon(() => doSearch(win.document));
-              }
-            });
-          }
+          info("Waiting for newtab search init");
+          win.addEventListener("ContentSearchService", function done(contentSearchServiceEvent) {
+            info("Got newtab search event " + contentSearchServiceEvent.detail.type);
+            if (contentSearchServiceEvent.detail.type == "State") {
+              win.removeEventListener("ContentSearchService", done);
+              // Let gSearch respond to the event before continuing.
+              executeSoon(() => doSearch(win.document));
+            }
+          });
         }, true);
       }
     }
   ];
 
   function nextTest() {
     if (gTests.length) {
       gCurrTest = gTests.shift();
--- a/browser/components/search/test/browser_ddg_behavior.js
+++ b/browser/components/search/test/browser_ddg_behavior.js
@@ -71,18 +71,20 @@ function test() {
     },
     {
       name: "new tab search",
       searchURL: base + "&t=ffnt",
       run() {
         function doSearch(doc) {
           // Re-add the listener, and perform a search
           gBrowser.addProgressListener(listener);
-          doc.getElementById("newtab-search-text").value = "foo";
-          doc.getElementById("newtab-search-submit").click();
+          let input = doc.querySelector("input[id*=search-]");
+          input.focus();
+          input.value = "foo";
+          EventUtils.synthesizeKey("VK_RETURN", {});
         }
 
         // load about:newtab, but remove the listener first so it doesn't
         // get in the way
         gBrowser.removeProgressListener(listener);
         gBrowser.loadURI("about:newtab");
         info("Waiting for about:newtab load");
         tab.linkedBrowser.addEventListener("load", function load(loadEvent) {
@@ -90,30 +92,25 @@ function test() {
               loadEvent.target.location.href == "about:blank") {
             info("skipping spurious load event");
             return;
           }
           tab.linkedBrowser.removeEventListener("load", load, true);
 
           // Observe page setup
           let win = gBrowser.contentWindowAsCPOW;
-          if (win.gSearch.currentEngineName ==
-              Services.search.currentEngine.name) {
-            doSearch(win.document);
-          } else {
-            info("Waiting for newtab search init");
-            win.addEventListener("ContentSearchService", function done(contentSearchServiceEvent) {
-              info("Got newtab search event " + contentSearchServiceEvent.detail.type);
-              if (contentSearchServiceEvent.detail.type == "State") {
-                win.removeEventListener("ContentSearchService", done);
-                // Let gSearch respond to the event before continuing.
-                executeSoon(() => doSearch(win.document));
-              }
-            });
-          }
+          info("Waiting for newtab search init");
+          win.addEventListener("ContentSearchService", function done(contentSearchServiceEvent) {
+            info("Got newtab search event " + contentSearchServiceEvent.detail.type);
+            if (contentSearchServiceEvent.detail.type == "State") {
+              win.removeEventListener("ContentSearchService", done);
+              // Let gSearch respond to the event before continuing.
+              executeSoon(() => doSearch(win.document));
+            }
+          });
         }, true);
       }
     }
   ];
 
   function nextTest() {
     if (gTests.length) {
       gCurrTest = gTests.shift();
--- a/browser/components/search/test/browser_google_behavior.js
+++ b/browser/components/search/test/browser_google_behavior.js
@@ -69,18 +69,20 @@ function test() {
     },
     {
       name: "new tab search",
       searchURL: base,
       run() {
         function doSearch(doc) {
           // Re-add the listener, and perform a search
           gBrowser.addProgressListener(listener);
-          doc.getElementById("newtab-search-text").value = "foo";
-          doc.getElementById("newtab-search-submit").click();
+          let input = doc.querySelector("input[id*=search-]");
+          input.focus();
+          input.value = "foo";
+          EventUtils.synthesizeKey("VK_RETURN", {});
         }
 
         // load about:newtab, but remove the listener first so it doesn't
         // get in the way
         gBrowser.removeProgressListener(listener);
         gBrowser.loadURI("about:newtab");
         info("Waiting for about:newtab load");
         tab.linkedBrowser.addEventListener("load", function load(loadEvent) {
@@ -88,30 +90,25 @@ function test() {
               loadEvent.target.location.href == "about:blank") {
             info("skipping spurious load event");
             return;
           }
           tab.linkedBrowser.removeEventListener("load", load, true);
 
           // Observe page setup
           let win = gBrowser.contentWindowAsCPOW;
-          if (win.gSearch.currentEngineName ==
-              Services.search.currentEngine.name) {
-            doSearch(win.document);
-          } else {
-            info("Waiting for newtab search init");
-            win.addEventListener("ContentSearchService", function done(searchServiceEvent) {
-              info("Got newtab search event " + searchServiceEvent.detail.type);
-              if (searchServiceEvent.detail.type == "State") {
-                win.removeEventListener("ContentSearchService", done);
-                // Let gSearch respond to the event before continuing.
-                executeSoon(() => doSearch(win.document));
-              }
-            });
-          }
+          info("Waiting for newtab search init");
+          win.addEventListener("ContentSearchService", function done(searchServiceEvent) {
+            info("Got newtab search event " + searchServiceEvent.detail.type);
+            if (searchServiceEvent.detail.type == "State") {
+              win.removeEventListener("ContentSearchService", done);
+              // Let gSearch respond to the event before continuing.
+              executeSoon(() => doSearch(win.document));
+            }
+          });
         }, true);
       }
     }
   ];
 
   function nextTest() {
     if (gTests.length) {
       gCurrTest = gTests.shift();
--- a/browser/components/search/test/browser_yahoo_behavior.js
+++ b/browser/components/search/test/browser_yahoo_behavior.js
@@ -71,18 +71,20 @@ function test() {
     },
     {
       name: "new tab search",
       searchURL: base + "&hsimp=yhs-004",
       run() {
         function doSearch(doc) {
           // Re-add the listener, and perform a search
           gBrowser.addProgressListener(listener);
-          doc.getElementById("newtab-search-text").value = "foo";
-          doc.getElementById("newtab-search-submit").click();
+          let input = doc.querySelector("input[id*=search-]");
+          input.focus();
+          input.value = "foo";
+          EventUtils.synthesizeKey("VK_RETURN", {});
         }
 
         // load about:newtab, but remove the listener first so it doesn't
         // get in the way
         gBrowser.removeProgressListener(listener);
         gBrowser.loadURI("about:newtab");
         info("Waiting for about:newtab load");
         tab.linkedBrowser.addEventListener("load", function load(loadEvent) {
@@ -90,30 +92,25 @@ function test() {
               loadEvent.target.location.href == "about:blank") {
             info("skipping spurious load event");
             return;
           }
           tab.linkedBrowser.removeEventListener("load", load, true);
 
           // Observe page setup
           let win = gBrowser.contentWindowAsCPOW;
-          if (win.gSearch.currentEngineName ==
-              Services.search.currentEngine.name) {
-            doSearch(win.document);
-          } else {
-            info("Waiting for newtab search init");
-            win.addEventListener("ContentSearchService", function done(searchServiceEvent) {
-              info("Got newtab search event " + searchServiceEvent.detail.type);
-              if (searchServiceEvent.detail.type == "State") {
-                win.removeEventListener("ContentSearchService", done);
-                // Let gSearch respond to the event before continuing.
-                executeSoon(() => doSearch(win.document));
-              }
-            });
-          }
+          info("Waiting for newtab search init");
+          win.addEventListener("ContentSearchService", function done(searchServiceEvent) {
+            info("Got newtab search event " + searchServiceEvent.detail.type);
+            if (searchServiceEvent.detail.type == "State") {
+              win.removeEventListener("ContentSearchService", done);
+              // Let gSearch respond to the event before continuing.
+              executeSoon(() => doSearch(win.document));
+            }
+          });
         }, true);
       }
     }
   ];
 
   function nextTest() {
     if (gTests.length) {
       gCurrTest = gTests.shift();