This will make it easier to test nested tables when support for them is
added in an upcoming commit, because it becomes possible to include
multiple of the complicated test tables in one file easily.
# +-+-+-+M+-+-+
# |Q|RST|N|U|V|
# +-+---+-+-+-+
# +-+-+-+M+-+-+
# |Q|RST|N|U|V|
# +-+---+-+-+-+
-m4_define([RENDER_WEAVE_6X6],
- [AT_DATA([input], [6 6 $1
+m4_define([WEAVE_6X6],
+ [6 6 $1
# +-+-+-+-+-+-+-+-+
# |a|b|c|d|e|f|g|h|
# +-+-+-+-+-+-+-+-+
# |a|b|c|d|e|f|g|h|
# +-+-+-+-+-+-+-+-+
# |i|j|k|l|m|n|o|p|
# +-+-+-+-+-+-+-+-+
# +-+-+-+-+-+-+-+-+
# |i|j|k|l|m|n|o|p|
# +-+-+-+-+-+-+-+-+
-m4_define([RENDER_8X8],
- [AT_DATA([input], [8 8 $1
+m4_define([WEAVE_8X8],
+ [8 8 $1
# This input is something of a counterexample, in that it could render
# compactly as this if the algorithm for choosing cell widths and
# This input is something of a counterexample, in that it could render
# compactly as this if the algorithm for choosing cell widths and
# +---+-+RSTUV|456|
# |abcde|WXYZ0|789|
# +-----+-----+---+
# +---+-+RSTUV|456|
# |abcde|WXYZ0|789|
# +-----+-----+---+
-m4_define([RENDER_8X8_2],
- [AT_DATA([input], [8 8 $1
+m4_define([WEAVE_8X8_2],
+ [8 8 $1
2*2 @abc\ndef\nghi
1*2 @jkl
2*2 @mno\npqr\nstu
2*2 @abc\ndef\nghi
1*2 @jkl
2*2 @mno\npqr\nstu
2*3 @MNOPQ\nRSTUV\nWXYZ0
2*2 @123\n456\n789
1*3 @abcde
2*3 @MNOPQ\nRSTUV\nWXYZ0
2*2 @123\n456\n789
1*3 @abcde
\f
AT_BANNER([output rendering -- no page breaking])
\f
AT_BANNER([output rendering -- no page breaking])
AT_SETUP([6x6, joined rows and columns])
AT_KEYWORDS([render rendering])
AT_SETUP([6x6, joined rows and columns])
AT_KEYWORDS([render rendering])
+AT_DATA([input], [WEAVE_6X6])
AT_CHECK([render-test input], [0], [dnl
+-+---+-+-+-+
|a|bcd|e|f|i|
AT_CHECK([render-test input], [0], [dnl
+-+---+-+-+-+
|a|bcd|e|f|i|
AT_SETUP([8x8 with many 2x2 joins])
AT_KEYWORDS([render rendering])
AT_SETUP([8x8 with many 2x2 joins])
AT_KEYWORDS([render rendering])
+AT_DATA([input], [WEAVE_8X8_2])
AT_CHECK([render-test input], [0],[dnl
+---+---+----+----+
|abc|jkl| mno| vwx|
AT_CHECK([render-test input], [0],[dnl
+---+---+----+----+
|abc|jkl| mno| vwx|
AT_SETUP([horz break 6x6, joined rows and columns])
AT_KEYWORDS([render rendering])
AT_SETUP([horz break 6x6, joined rows and columns])
AT_KEYWORDS([render rendering])
+AT_DATA([input], [WEAVE_6X6])
AT_DATA([expout], [dnl
+-+--
|a|bc
AT_DATA([expout], [dnl
+-+--
|a|bc
AT_SETUP([horz break 6x6, joined rows and columns, left header])
AT_KEYWORDS([render rendering])
AT_SETUP([horz break 6x6, joined rows and columns, left header])
AT_KEYWORDS([render rendering])
-RENDER_WEAVE_6X6([1 0 0 0])
+AT_DATA([input], [WEAVE_6X6([1 0 0 0])])
AT_DATA([expout], [dnl
+-+---+-+
|a|bcd|e|
AT_DATA([expout], [dnl
+-+---+-+
|a|bcd|e|
AT_SETUP([horz break 6x6, joined rows and columns, right header])
AT_KEYWORDS([render rendering])
AT_SETUP([horz break 6x6, joined rows and columns, right header])
AT_KEYWORDS([render rendering])
-RENDER_WEAVE_6X6([0 1 0 0])
+AT_DATA([input], [WEAVE_6X6([0 1 0 0])])
AT_DATA([expout], [dnl
+-+---+-+
|a|bcd|i|
AT_DATA([expout], [dnl
+-+---+-+
|a|bcd|i|
AT_SETUP([horz break 8x8 with many 2x2 joins])
AT_KEYWORDS([render rendering])
AT_SETUP([horz break 8x8 with many 2x2 joins])
AT_KEYWORDS([render rendering])
+AT_DATA([input], [WEAVE_8X8_2])
AT_CHECK([render-test --width=8 input], [0],[dnl
+---+--
|abc|jk
AT_CHECK([render-test --width=8 input], [0],[dnl
+---+--
|abc|jk
AT_SETUP([vert break 6x6, joined rows and columns])
AT_KEYWORDS([render rendering])
AT_SETUP([vert break 6x6, joined rows and columns])
AT_KEYWORDS([render rendering])
+AT_DATA([input], [WEAVE_6X6])
AT_CHECK([render-test --length=6 input], [0], [dnl
+-+---+-+-+-+
|a|bcd|e|f|i|
AT_CHECK([render-test --length=6 input], [0], [dnl
+-+---+-+-+-+
|a|bcd|e|f|i|
AT_SETUP([double break 6x6, joined rows and columns])
AT_KEYWORDS([render rendering])
AT_SETUP([double break 6x6, joined rows and columns])
AT_KEYWORDS([render rendering])
+AT_DATA([input], [WEAVE_6X6])
AT_CHECK([render-test --width=6 --length=6 input], [0], [dnl
+-+--
|a|bc
AT_CHECK([render-test --width=6 --length=6 input], [0], [dnl
+-+--
|a|bc
AT_SETUP([double break 8x8, with joins, left and right headers])
AT_KEYWORDS([render rendering])
AT_SETUP([double break 8x8, with joins, left and right headers])
AT_KEYWORDS([render rendering])
+AT_DATA([input], [WEAVE_8X8([1 1 0 0])])
AT_CHECK([render-test input --width=14 --length=14], [0], [dnl
+-+-+-+-+-+-+
|a|b|c|d|e|h|
AT_CHECK([render-test input --width=14 --length=14], [0], [dnl
+-+-+-+-+-+-+
|a|b|c|d|e|h|
AT_SETUP([double break 8x8, with joins, top and bottom headers])
AT_KEYWORDS([render rendering])
AT_SETUP([double break 8x8, with joins, top and bottom headers])
AT_KEYWORDS([render rendering])
+AT_DATA([input], [WEAVE_8X8([0 0 1 1])])
AT_CHECK([render-test input --width=14 --length=14], [0], [dnl
+-+-+-+-+-+-+
|a|b|c|d|e|f|
AT_CHECK([render-test input --width=14 --length=14], [0], [dnl
+-+-+-+-+-+-+
|a|b|c|d|e|f|
AT_SETUP([double break 8x8, with joins, all headers])
AT_KEYWORDS([render rendering])
AT_SETUP([double break 8x8, with joins, all headers])
AT_KEYWORDS([render rendering])
+AT_DATA([input], [WEAVE_8X8([1 1 1 1])])
AT_CHECK([render-test input --width=14 --length=14], [0], [dnl
+-+-+-+-+-+-+
|a|b|c|d|e|h|
AT_CHECK([render-test input --width=14 --length=14], [0], [dnl
+-+-+-+-+-+-+
|a|b|c|d|e|h|