initial proper subfooter unit tests
BIN
tests/ref/grid-subfooters-basic-non-consecutive-with-header.png
Normal file
After Width: | Height: | Size: 279 B |
BIN
tests/ref/grid-subfooters-basic-non-consecutive.png
Normal file
After Width: | Height: | Size: 258 B |
BIN
tests/ref/grid-subfooters-basic-replace.png
Normal file
After Width: | Height: | Size: 319 B |
BIN
tests/ref/grid-subfooters-basic-with-header.png
Normal file
After Width: | Height: | Size: 256 B |
BIN
tests/ref/grid-subfooters-basic.png
Normal file
After Width: | Height: | Size: 210 B |
BIN
tests/ref/grid-subfooters-repeat-gutter.png
Normal file
After Width: | Height: | Size: 626 B |
BIN
tests/ref/grid-subfooters-repeat-non-consecutive.png
Normal file
After Width: | Height: | Size: 622 B |
BIN
tests/ref/grid-subfooters-repeat-replace-double-widow.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
tests/ref/grid-subfooters-repeat-replace-gutter.png
Normal file
After Width: | Height: | Size: 772 B |
BIN
tests/ref/grid-subfooters-repeat-replace-widow.png
Normal file
After Width: | Height: | Size: 979 B |
BIN
tests/ref/grid-subfooters-repeat-replace.png
Normal file
After Width: | Height: | Size: 975 B |
BIN
tests/ref/grid-subfooters-repeat-with-header.png
Normal file
After Width: | Height: | Size: 596 B |
BIN
tests/ref/grid-subfooters-repeat.png
Normal file
After Width: | Height: | Size: 549 B |
@ -22,6 +22,7 @@
|
||||
[*Mode*], [2025],
|
||||
table.cell(colspan: 2)[*Totals*],
|
||||
),
|
||||
// TODO: Why does it overflow here?
|
||||
table.header(
|
||||
level: 2,
|
||||
table.cell(colspan: 2)[*United States*],
|
||||
@ -39,3 +40,143 @@
|
||||
table.cell(colspan: 2)[*Data Inc.*],
|
||||
),
|
||||
)
|
||||
|
||||
--- grid-subfooters-basic ---
|
||||
#grid(
|
||||
[a],
|
||||
grid.footer(level: 2, [b]),
|
||||
grid.footer([c]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-basic-non-consecutive ---
|
||||
#grid(
|
||||
[x],
|
||||
grid.footer(level: 2, [a]),
|
||||
[y],
|
||||
grid.footer([b]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-basic-replace ---
|
||||
#grid(
|
||||
[x],
|
||||
grid.footer(level: 2, [a]),
|
||||
[y],
|
||||
grid.footer(level: 2, [b]),
|
||||
[z],
|
||||
grid.footer([c]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-basic-with-header ---
|
||||
#grid(
|
||||
grid.header([a]),
|
||||
[b],
|
||||
grid.footer(level: 2, [c]),
|
||||
grid.footer([d]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-basic-non-consecutive-with-header ---
|
||||
#grid(
|
||||
grid.header([a]),
|
||||
[x],
|
||||
grid.footer(level: 2, [b]),
|
||||
[y],
|
||||
grid.footer([f])
|
||||
)
|
||||
|
||||
--- grid-subfooters-repeat ---
|
||||
#set page(height: 8em)
|
||||
#grid(
|
||||
..([a],) * 10,
|
||||
grid.footer(level: 2, [b]),
|
||||
grid.footer([c]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-repeat-non-consecutive ---
|
||||
#set page(height: 8em)
|
||||
#grid(
|
||||
..([y],) * 10,
|
||||
grid.footer(level: 2, [b]),
|
||||
[x],
|
||||
grid.footer([a]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-repeat-with-header ---
|
||||
#set page(height: 8em)
|
||||
#grid(
|
||||
grid.header([a]),
|
||||
..([b],) * 10,
|
||||
grid.footer(level: 2, [c]),
|
||||
[m],
|
||||
grid.footer([f])
|
||||
)
|
||||
|
||||
--- grid-subfooters-repeat-gutter ---
|
||||
// Gutter above the footer is also repeated
|
||||
#set page(height: 8em)
|
||||
#grid(
|
||||
inset: (top: 0.5pt),
|
||||
stroke: (top: 1pt),
|
||||
gutter: (1pt,) * 9 + (6pt, 1pt),
|
||||
..([a],) * 10,
|
||||
grid.footer(level: 2, [b]),
|
||||
grid.footer([c]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-repeat-replace ---
|
||||
#set page(height: 8em)
|
||||
#grid(
|
||||
..([x],) * 10,
|
||||
grid.footer(level: 2, [a]),
|
||||
..([y],) * 10,
|
||||
grid.footer(level: 2, [b]),
|
||||
[z],
|
||||
grid.footer([c]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-repeat-replace-multiple-levels ---
|
||||
// TODO: This is overflowing
|
||||
#set page(height: 8em)
|
||||
#grid(
|
||||
..([x],) * 6,
|
||||
grid.footer(level: 2, [a]),
|
||||
..([y],) * 10,
|
||||
grid.footer(level: 3, [b]),
|
||||
grid.footer(level: 2, [c]),
|
||||
[z],
|
||||
grid.footer([d]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-repeat-replace-gutter ---
|
||||
#set page(height: 8em)
|
||||
#grid(
|
||||
gutter: 3pt,
|
||||
..([x],) * 3,
|
||||
grid.footer(level: 2, [a]),
|
||||
..([y],) * 8,
|
||||
grid.footer(level: 2, [b]),
|
||||
[z],
|
||||
grid.footer([c]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-repeat-replace-widow ---
|
||||
#set page(height: 8em)
|
||||
#grid(
|
||||
..([x],) * 14,
|
||||
grid.footer(level: 2, [a]),
|
||||
..([y],) * 8,
|
||||
grid.footer(level: 2, [b]),
|
||||
[z],
|
||||
grid.footer([c]),
|
||||
)
|
||||
|
||||
--- grid-subfooters-repeat-replace-double-widow ---
|
||||
#set page(height: 8em)
|
||||
#grid(
|
||||
..([x],) * 12,
|
||||
grid.footer(level: 3, [a]),
|
||||
grid.footer(level: 2, [b]),
|
||||
..([y],) * 11,
|
||||
grid.footer(level: 2, [c]),
|
||||
[z],
|
||||
grid.footer([d]),
|
||||
)
|
||||
|