summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/selection/modify-line-flex-row.tentative.html
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /testing/web-platform/tests/selection/modify-line-flex-row.tentative.html
parentInitial commit. (diff)
downloadthunderbird-6bf0a5cb5034a7e684dcc3500e841785237ce2dd.tar.xz
thunderbird-6bf0a5cb5034a7e684dcc3500e841785237ce2dd.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/selection/modify-line-flex-row.tentative.html')
-rw-r--r--testing/web-platform/tests/selection/modify-line-flex-row.tentative.html50
1 files changed, 50 insertions, 0 deletions
diff --git a/testing/web-platform/tests/selection/modify-line-flex-row.tentative.html b/testing/web-platform/tests/selection/modify-line-flex-row.tentative.html
new file mode 100644
index 0000000000..28b22eba03
--- /dev/null
+++ b/testing/web-platform/tests/selection/modify-line-flex-row.tentative.html
@@ -0,0 +1,50 @@
+<!doctype html>
+<meta charset=utf-8>
+<title>Selection.modify(): line navigation on a row-oriented flex container</title>
+<script src=/resources/testharness.js></script>
+<script src=/resources/testharnessreport.js></script>
+<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
+<link rel="author" title="Mozilla" href="https://mozilla.org">
+<style>
+ p { display: flex }
+</style>
+<div id="container" style="font-family: monospace">
+ <p><div></div><div id="one">One</div></p>
+ <p><div></div><div id="two">Two</div></p>
+ <p><div></div><div id="three">Three</div></p>
+ <p><div></div><div id="four">Four</div></p>
+</div>
+<script>
+const selection = getSelection();
+test(() => {
+ // Put the caret in the second character in "One"
+ selection.collapse(one.childNodes[0], 2);
+ // Move forward a line, selection should be after "Tw".
+ selection.modify("extend", "forward", "line")
+ assert_equals(selection.focusNode, two.childNodes[0]);
+ assert_equals(selection.focusOffset, 2);
+
+ // Move forward another line, selection should be after "Th".
+ selection.modify("extend", "forward", "line")
+ assert_equals(selection.focusNode, three.childNodes[0]);
+ assert_equals(selection.focusOffset, 2);
+
+ assert_equals(selection.toString().replaceAll("\r\n", "\n"), "e\n\nTwo\n\nTh");
+}, "forward");
+
+test(() => {
+ // Put the caret in the second character in "Three"
+ selection.collapse(three.childNodes[0], 2);
+ // Move backward a line, selection should be after "Tw".
+ selection.modify("extend", "backward", "line")
+ assert_equals(selection.focusNode, two.childNodes[0]);
+ assert_equals(selection.focusOffset, 2);
+
+ // Move backward another line, selection should be after "On".
+ selection.modify("extend", "backward", "line")
+ assert_equals(selection.focusNode, one.childNodes[0]);
+ assert_equals(selection.focusOffset, 2);
+
+ assert_equals(selection.toString().replaceAll("\r\n", "\n"), "e\n\nTwo\n\nTh");
+}, "backward");
+</script>