summaryrefslogtreecommitdiff
path: root/tests/suite/text/space.typ
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2024-04-13 10:39:45 +0200
committerGitHub <noreply@github.com>2024-04-13 08:39:45 +0000
commit020294fca9a7065d4b9cf4e677f606ebaaa29b00 (patch)
treec0027ad22046e2726c22298461327823d6b88d53 /tests/suite/text/space.typ
parent72dd79210602ecc799726fc096b078afbb47f299 (diff)
Better test runner (#3922)
Diffstat (limited to 'tests/suite/text/space.typ')
-rw-r--r--tests/suite/text/space.typ60
1 files changed, 60 insertions, 0 deletions
diff --git a/tests/suite/text/space.typ b/tests/suite/text/space.typ
new file mode 100644
index 00000000..97541e38
--- /dev/null
+++ b/tests/suite/text/space.typ
@@ -0,0 +1,60 @@
+// Test whitespace handling.
+
+--- space-collapsing ---
+// Spacing around code constructs.
+A#let x = 1;B #test(x, 1) \
+C #let x = 2;D #test(x, 2) \
+E#if true [F]G \
+H #if true{"I"} J \
+K #if true [L] else []M \
+#let c = true; N#while c [#(c = false)O] P \
+#let c = true; Q #while c { c = false; "R" } S \
+T#for _ in (none,) {"U"}V
+#let foo = "A" ; \
+#foo;B \
+#foo; B \
+#foo ;B
+
+--- space-collapsing-comments ---
+// Test spacing with comments.
+A/**/B/**/C \
+A /**/ B/**/C \
+A /**/B/**/ C
+
+--- space-collapsing-with-h ---
+// Test spacing collapsing before spacing.
+#set align(right)
+A #h(0pt) B #h(0pt) \
+A B \
+A #h(-1fr) B
+
+--- text-font-just-a-space ---
+// Test that a run consisting only of whitespace isn't trimmed.
+A#text(font: "IBM Plex Serif")[ ]B
+
+--- text-font-change-after-space ---
+// Test font change after space.
+Left #text(font: "IBM Plex Serif")[Right].
+
+--- space-collapsing-linebreaks ---
+// Test that linebreak consumed surrounding spaces.
+#align(center)[A \ B \ C]
+
+--- space-collapsing-stringy-linebreak ---
+// Test that space at start of non-backslash-linebreak line isn't trimmed.
+A#"\n" B
+
+--- space-trailing-linebreak ---
+// Test that trailing space does not force a line break.
+LLLLLLLLLLLLLLLLLL R _L_
+
+--- space-ideographic-kept ---
+// Test that ideographic spaces are preserved.
+#set text(lang: "ja", font: "Noto Serif CJK JP")
+
+だろうか? 何のために! 私は、
+
+--- space-thin-kept ---
+// Test that thin spaces are preserved.
+| | U+0020 regular space \
+| | U+2009 thin space