Bug 963925 - Add test for Highlight All mode. r=Unfocused, a=lsblakk
--- a/toolkit/content/tests/chrome/findbar_window.xul
+++ b/toolkit/content/tests/chrome/findbar_window.xul
@@ -86,16 +86,19 @@
ok(gFindBar.hidden, "Failed to close findbar after testNormalFind");
testNormalFindWithComposition();
gFindBar.close();
ok(gFindBar.hidden, "findbar should be hidden after testNormalFindWithComposition");
testAutoCaseSensitivityUI();
testQuickFindText();
gFindBar.close();
ok(gFindBar.hidden, "Failed to close findbar after testQuickFindText");
+ testFindWithHighlight();
+ gFindBar.close();
+ ok(gFindBar.hidden, "Failed to close findbar after testFindWithHighlight");
testFindbarSelection();
testDrop();
testQuickFindLink();
testStatusText();
testQuickFindClose();
}
function testFindbarSelection() {
@@ -299,16 +302,62 @@
"testQuickFindLink: find field is not focused");
var searchStr = "Link Test";
enterStringIntoFindField(searchStr);
ok(gBrowser.contentWindow.getSelection() == searchStr,
"testQuickFindLink: failed to find sample link");
}
+ // See bug 963925 for more details on this test.
+ function testFindWithHighlight() {
+ //clearFocus();
+ gFindBar._findField.value = "";
+
+ let findCommand = document.getElementById("cmd_find");
+ findCommand.doCommand();
+
+ let searchStr = "e";
+ enterStringIntoFindField(searchStr);
+
+ let a = gFindBar._findField.value;
+ let b = gFindBar._browser.finder._fastFind.searchString;
+ let c = gFindBar._browser.finder.searchString;
+ ok(a == b && b == c, "testFindWithHighlight: " + a + ", " + b + ", " + c + ".");
+
+ let oldGetInitialSelection = gFindBar._getInitialSelection;
+ let searchStr = "t";
+ gFindBar._getInitialSelection = () => searchStr;
+ findCommand.doCommand();
+ gFindBar._getInitialSelection = oldGetInitialSelection;
+
+ a = gFindBar._findField.value;
+ b = gFindBar._browser.finder._fastFind.searchString;
+ c = gFindBar._browser.finder.searchString;
+ ok(a == searchStr && b == c, "testFindWithHighlight: " + a + ", " + b + ", " + c + ".");
+
+ let highlightButton = gFindBar.getElement("highlight");
+ highlightButton.click();
+ ok(highlightButton.checked, "testFindWithHighlight: Highlight All should be checked.");
+
+ a = gFindBar._findField.value;
+ b = gFindBar._browser.finder._fastFind.searchString;
+ c = gFindBar._browser.finder.searchString;
+ ok(a == searchStr && b == c, "testFindWithHighlight: " + a + ", " + b + ", " + c + ".");
+
+ gFindBar.onFindAgainCommand();
+ a = gFindBar._findField.value;
+ b = gFindBar._browser.finder._fastFind.searchString;
+ c = gFindBar._browser.finder.searchString;
+ ok(a == b && b == c, "testFindWithHighlight: " + a + ", " + b + ", " + c + ".");
+
+ highlightButton.click();
+ ok(!highlightButton.checked, "testFindWithHighlight: Highlight All should be unchecked.");
+ }
+
function testQuickFindText() {
clearFocus();
var event = document.createEvent("KeyEvents");
event.initKeyEvent("keypress", true, true, null, false, false,
false, false, 0, "/".charCodeAt(0));
gBrowser.contentDocument.documentElement.dispatchEvent(event);