Bug 1358025 - Part 1. Use setUserInput instead of input.value setter. r?pbro draft
authorMakoto Kato <m_kato@ga2.so-net.ne.jp>
Thu, 18 May 2017 16:32:10 +0900
changeset 580266 dcdfbe47fe9dac1e8b0a325c0be0a114ea28768d
parent 580040 baf05f61bc14fdf45511bc1165ce76daa08c5c0f
child 580267 642dbd872c651e563db4025a5b0ce7567b134503
child 584337 54778d9604081b07a1959a458e864e770724c18a
push id59489
push userm_kato@ga2.so-net.ne.jp
push dateThu, 18 May 2017 09:13:13 +0000
reviewerspbro
bugs1358025
milestone55.0a1
Bug 1358025 - Part 1. Use setUserInput instead of input.value setter. r?pbro Actually, other browsers (except to Gecko) doesn't create undo history by input.value setter. It only creates user interaction. devtools tests check enableUndo after using input.value setter. So we should use setUserInput to emulate input instead. Although input.value setter doesn't generate input event, but setUserInput will generate input event, so we need wait for search request on browser_inspector_search-filter_context-menu.js. MozReview-Commit-ID: KLiv1J0i5tJ
devtools/client/inspector/computed/test/browser_computed_search-filter_context-menu.js
devtools/client/inspector/rules/test/browser_rules_search-filter_context-menu.js
devtools/client/inspector/test/browser_inspector_search-filter_context-menu.js
--- a/devtools/client/inspector/computed/test/browser_computed_search-filter_context-menu.js
+++ b/devtools/client/inspector/computed/test/browser_computed_search-filter_context-menu.js
@@ -52,17 +52,17 @@ add_task(function* () {
   is(cmdPaste.getAttribute("disabled"), "", "cmdPaste is enabled");
 
   info("Closing context menu");
   let onContextMenuHidden = once(searchContextMenu, "popuphidden");
   searchContextMenu.hidePopup();
   yield onContextMenuHidden;
 
   info("Copy text in search field using the context menu");
-  searchField.value = TEST_INPUT;
+  searchField.setUserInput(TEST_INPUT);
   searchField.select();
   EventUtils.synthesizeMouse(searchField, 2, 2,
     {type: "contextmenu", button: 2}, win);
   yield onContextMenuPopup;
   yield waitForClipboardPromise(() => cmdCopy.click(), TEST_INPUT);
   searchContextMenu.hidePopup();
   yield onContextMenuHidden;
 
--- a/devtools/client/inspector/rules/test/browser_rules_search-filter_context-menu.js
+++ b/devtools/client/inspector/rules/test/browser_rules_search-filter_context-menu.js
@@ -51,17 +51,17 @@ add_task(function* () {
   is(cmdPaste.getAttribute("disabled"), "", "cmdPaste is enabled");
 
   info("Closing context menu");
   let onContextMenuHidden = once(searchContextMenu, "popuphidden");
   searchContextMenu.hidePopup();
   yield onContextMenuHidden;
 
   info("Copy text in search field using the context menu");
-  searchField.value = TEST_INPUT;
+  searchField.setUserInput(TEST_INPUT);
   searchField.select();
   EventUtils.synthesizeMouse(searchField, 2, 2,
     {type: "contextmenu", button: 2}, win);
   yield onContextMenuPopup;
   yield waitForClipboardPromise(() => cmdCopy.click(), TEST_INPUT);
   searchContextMenu.hidePopup();
   yield onContextMenuHidden;
 
--- a/devtools/client/inspector/test/browser_inspector_search-filter_context-menu.js
+++ b/devtools/client/inspector/test/browser_inspector_search-filter_context-menu.js
@@ -49,17 +49,17 @@ add_task(function* () {
   is(cmdPaste.getAttribute("disabled"), "", "cmdPaste is enabled");
 
   info("Closing context menu");
   let onContextMenuHidden = once(searchContextMenu, "popuphidden");
   searchContextMenu.hidePopup();
   yield onContextMenuHidden;
 
   info("Copy text in search field using the context menu");
-  searchBox.value = TEST_INPUT;
+  searchBox.setUserInput(TEST_INPUT);
   searchBox.select();
   searchBox.focus();
   EventUtils.synthesizeMouse(searchBox, 2, 2,
     {type: "contextmenu", button: 2}, win);
   yield onContextMenuPopup;
   yield waitForClipboardPromise(() => cmdCopy.click(), TEST_INPUT);
   searchContextMenu.hidePopup();
   yield onContextMenuHidden;
@@ -70,9 +70,13 @@ add_task(function* () {
   yield onContextMenuPopup;
 
   is(cmdUndo.getAttribute("disabled"), "", "cmdUndo is enabled");
   is(cmdDelete.getAttribute("disabled"), "", "cmdDelete is enabled");
   is(cmdSelectAll.getAttribute("disabled"), "", "cmdSelectAll is enabled");
   is(cmdCut.getAttribute("disabled"), "", "cmdCut is enabled");
   is(cmdCopy.getAttribute("disabled"), "", "cmdCopy is enabled");
   is(cmdPaste.getAttribute("disabled"), "", "cmdPaste is enabled");
+
+  // We have to wait for search query to avoid test failure.
+  info("Waiting for search query to complete and getting the suggestions");
+  yield inspector.searchSuggestions._lastQuery;
 });