summaryrefslogtreecommitdiffstats
path: root/browser/components/urlbar/tests/browser/browser_keywordSearch.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 19:33:14 +0000
commit36d22d82aa202bb199967e9512281e9a53db42c9 (patch)
tree105e8c98ddea1c1e4784a60a5a6410fa416be2de /browser/components/urlbar/tests/browser/browser_keywordSearch.js
parentInitial commit. (diff)
downloadfirefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz
firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'browser/components/urlbar/tests/browser/browser_keywordSearch.js')
-rw-r--r--browser/components/urlbar/tests/browser/browser_keywordSearch.js57
1 files changed, 57 insertions, 0 deletions
diff --git a/browser/components/urlbar/tests/browser/browser_keywordSearch.js b/browser/components/urlbar/tests/browser/browser_keywordSearch.js
new file mode 100644
index 0000000000..b8402a4e90
--- /dev/null
+++ b/browser/components/urlbar/tests/browser/browser_keywordSearch.js
@@ -0,0 +1,57 @@
+/**
+ * Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/
+ */
+
+var gTests = [
+ {
+ name: "normal search (search service)",
+ text: "test search",
+ expectText: "test+search",
+ },
+ {
+ name: "?-prefixed search (search service)",
+ text: "? foo ",
+ expectText: "foo",
+ },
+];
+
+add_setup(async function () {
+ await SearchTestUtils.promiseNewSearchEngine({
+ url: getRootDirectory(gTestPath) + "searchSuggestionEngine.xml",
+ setAsDefault: true,
+ });
+});
+
+add_task(async function () {
+ // Test both directly setting a value and pressing enter, or setting the
+ // value through input events, like the user would do.
+ const setValueFns = [
+ value => {
+ gURLBar.value = value;
+ },
+ value => {
+ return UrlbarTestUtils.promiseAutocompleteResultPopup({
+ window,
+ value,
+ });
+ },
+ ];
+
+ for (let test of gTests) {
+ info("Testing: " + test.name);
+ await BrowserTestUtils.withNewTab({ gBrowser }, async browser => {
+ for (let setValueFn of setValueFns) {
+ gURLBar.select();
+ await setValueFn(test.text);
+ EventUtils.synthesizeKey("KEY_Enter");
+
+ let expectedUrl = "http://mochi.test:8888/?terms=" + test.expectText;
+ info("Waiting for load: " + expectedUrl);
+ await BrowserTestUtils.browserLoaded(browser, false, expectedUrl);
+ // At least one test.
+ Assert.equal(browser.currentURI.spec, expectedUrl);
+ }
+ });
+ }
+});