diff options
| author | Laurenz <laurmaedje@gmail.com> | 2024-04-13 10:39:45 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-13 08:39:45 +0000 |
| commit | 020294fca9a7065d4b9cf4e677f606ebaaa29b00 (patch) | |
| tree | c0027ad22046e2726c22298461327823d6b88d53 /tests/suite/visualize/line.typ | |
| parent | 72dd79210602ecc799726fc096b078afbb47f299 (diff) | |
Better test runner (#3922)
Diffstat (limited to 'tests/suite/visualize/line.typ')
| -rw-r--r-- | tests/suite/visualize/line.typ | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/tests/suite/visualize/line.typ b/tests/suite/visualize/line.typ new file mode 100644 index 00000000..7259f72b --- /dev/null +++ b/tests/suite/visualize/line.typ @@ -0,0 +1,92 @@ +// Test lines. + +--- line-basic --- +#set page(height: 60pt) +#box({ + set line(stroke: 0.75pt) + place(line(end: (0.4em, 0pt))) + place(line(start: (0pt, 0.4em), end: (0pt, 0pt))) + line(end: (0.6em, 0.6em)) +}) Hello #box(line(length: 1cm))! + +#line(end: (70%, 50%)) + +--- line-positioning --- +// Test the angle argument and positioning. + +#set page(fill: rgb("0B1026")) +#set line(stroke: white) + +#let star(size, ..args) = box(width: size, height: size)[ + #set text(spacing: 0%) + #set line(..args) + #set align(left) + #v(30%) + #place(line(length: +30%, start: (09.0%, 02%))) + #place(line(length: +30%, start: (38.7%, 02%), angle: -72deg)) + #place(line(length: +30%, start: (57.5%, 02%), angle: 252deg)) + #place(line(length: +30%, start: (57.3%, 02%))) + #place(line(length: -30%, start: (88.0%, 02%), angle: -36deg)) + #place(line(length: +30%, start: (73.3%, 48%), angle: 252deg)) + #place(line(length: -30%, start: (73.5%, 48%), angle: 36deg)) + #place(line(length: +30%, start: (25.4%, 48%), angle: -36deg)) + #place(line(length: +30%, start: (25.6%, 48%), angle: -72deg)) + #place(line(length: +32%, start: (8.50%, 02%), angle: 34deg)) +] + +#align(center, grid( + columns: 3, + column-gutter: 10pt, + ..((star(20pt, stroke: 0.5pt),) * 9) +)) + +--- line-stroke --- +// Some simple test lines +#line(length: 60pt, stroke: red) +#v(3pt) +#line(length: 60pt, stroke: 2pt) +#v(3pt) +#line(length: 60pt, stroke: blue + 1.5pt) +#v(3pt) +#line(length: 60pt, stroke: (paint: red, thickness: 1pt, dash: "dashed")) +#v(3pt) +#line(length: 60pt, stroke: (paint: red, thickness: 4pt, cap: "round")) + +--- line-stroke-set --- +// Set rules with stroke +#set line(stroke: (paint: red, thickness: 1pt, cap: "butt", dash: "dash-dotted")) +#line(length: 60pt) +#v(3pt) +#line(length: 60pt, stroke: blue) +#v(3pt) +#line(length: 60pt, stroke: (dash: none)) + +--- line-stroke-dash --- +// Dashing +#line(length: 60pt, stroke: (paint: red, thickness: 1pt, dash: ("dot", 1pt))) +#v(3pt) +#line(length: 60pt, stroke: (paint: red, thickness: 1pt, dash: ("dot", 1pt, 4pt, 2pt))) +#v(3pt) +#line(length: 60pt, stroke: (paint: red, thickness: 1pt, dash: (array: ("dot", 1pt, 4pt, 2pt), phase: 5pt))) +#v(3pt) +#line(length: 60pt, stroke: (paint: red, thickness: 1pt, dash: ())) +#v(3pt) +#line(length: 60pt, stroke: (paint: red, thickness: 1pt, dash: (1pt, 3pt, 9pt))) + +--- line-stroke-field-typo --- +// Error: 29-56 unexpected key "thicknes", valid keys are "paint", "thickness", "cap", "join", "dash", and "miter-limit" +#line(length: 60pt, stroke: (paint: red, thicknes: 1pt)) + +--- line-stroke-bad-dash-kind --- +// Error: 29-55 expected "solid", "dotted", "densely-dotted", "loosely-dotted", "dashed", "densely-dashed", "loosely-dashed", "dash-dotted", "densely-dash-dotted", "loosely-dash-dotted", array, dictionary, none, or auto +#line(length: 60pt, stroke: (paint: red, dash: "dash")) + +--- line-bad-point-array --- +// Test errors. + +// Error: 12-19 point array must contain exactly two entries +#line(end: (50pt,)) + +--- line-bad-point-component-type --- +// Error: 14-26 expected relative length, found angle +#line(start: (3deg, 10pt), length: 5cm) |
