summaryrefslogtreecommitdiffstats
path: root/dom/base/test/test_find_bug1654683.html
diff options
context:
space:
mode:
Diffstat (limited to 'dom/base/test/test_find_bug1654683.html')
-rw-r--r--dom/base/test/test_find_bug1654683.html30
1 files changed, 30 insertions, 0 deletions
diff --git a/dom/base/test/test_find_bug1654683.html b/dom/base/test/test_find_bug1654683.html
new file mode 100644
index 0000000000..c4a8aea8af
--- /dev/null
+++ b/dom/base/test/test_find_bug1654683.html
@@ -0,0 +1,30 @@
+<!doctype html>
+<meta charset="utf-8">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<div class="before">
+ mozilla before
+</div>
+<input value="mozilla">
+<div class="after">
+ mozilla after
+</div>
+<script>
+function selectionContainedWithin(selector) {
+ for (let node = getSelection().anchorNode; node; node = node.parentNode) {
+ if (node.matches && node.matches(selector))
+ return true;
+ }
+ return false;
+}
+
+test(function () {
+ let input = document.querySelector("input");
+ input.focus();
+ assert_true(window.find("mozilla"), "Found the string, didn't throw");
+ assert_true(selectionContainedWithin(".after"), "Should've found the following node");
+ assert_true(!window.find("mozilla"), "No more matches forward");
+ assert_true(window.find("mozilla", /* caseSensitive = */ false, /* backwards = */ true), "Should find stuff backwards");
+ assert_true(selectionContainedWithin(".before"), "Should've found the node before the input (should not return the NAC range)");
+}, "window.find() doesn't throw if focused on an <input>");
+</script>