])
AT_CLEANUP
+AT_SETUP([CTABLES area definitions with CLABELS ROWLABELS=LAYER])
+AT_KEYWORDS([ROWLABELS LAYER])
+AT_CHECK([ln $top_srcdir/examples/nhtsa.sav . || cp $top_srcdir/examples/nhtsa.sav .])
+AT_DATA([ctables.sps],
+[[GET 'nhtsa.sav'.
+CTABLES
+ /VLABELS VARIABLES=ALL DISPLAY=NAME
+ /TABLE qn26 > qn61 > qn57 BY qn27 > qnd7a > qn86 BY qns3a[TABLEID, LAYERID, SUBTABLEID]
+ /SLABELS POSITION=ROW
+ /CLABELS ROWLABELS=LAYER
+ /TABLE qn26 > qn61 > qn57 BY qn27 > qnd7a > qn86 BY qns3a[ROWID, LAYERROWID]
+ /SLABELS POSITION=ROW
+ /CLABELS ROWLABELS=LAYER.
+* /TABLE qn26 > qn61 > qn57 BY qn27 > qnd7a > qn86 BY qns3a[COLID, LAYERCOLID]
+ /SLABELS POSITION=ROW
+ /CLABELS ROWLABELS=LAYER.
+]])
+AT_CHECK([pspp ctables.sps --table-look="$builddir"/all-layers.stt -O box=unicode -O width=120], [0], [dnl
+ Custom Tables
+Male
+Yes
+╭──────────────────────────────────┬───────────────────────────╮
+│ │ QN27 │
+│ ├─────────────┬─────────────┤
+│ │ Yes │ No │
+│ ├─────────────┼─────────────┤
+│ │ QND7A │ QND7A │
+│ ├──────┬──────┼──────┬──────┤
+│ │ Yes │ No │ Yes │ No │
+│ ├──────┼──────┼──────┼──────┤
+│ │ QN86 │ QN86 │ QN86 │ QN86 │
+│ ├───┬──┼───┬──┼───┬──┼───┬──┤
+│ │Yes│No│Yes│No│Yes│No│Yes│No│
+├──────────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│QN26 Yes QN61 Yes QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 2│ 2│ 2│ 2│ 2│ 2│ 2│ 2│
+│ Subtable ID│ 2│ 2│ 4│ 4│ 6│ 6│ 7│ 7│
+│ ╶────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 2│ 2│ 2│ 2│ 2│ 2│ 2│ 2│
+│ Subtable ID│ 2│ 2│ 4│ 4│ 6│ 6│ 7│ 7│
+│ ╶─────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN61 Yes QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 2│ 2│ 2│ 2│ 2│ 2│ 2│ 2│
+│ Subtable ID│ 10│10│ 12│12│ 13│13│ 15│15│
+│ ╶────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 2│ 2│ 2│ 2│ 2│ 2│ 2│ 2│
+│ Subtable ID│ 10│10│ 12│12│ 13│13│ 15│15│
+╰──────────────────────────────────┴───┴──┴───┴──┴───┴──┴───┴──╯
+
+ Custom Tables
+Male
+No
+╭──────────────────────────────────┬───────────────────────────╮
+│ │ QN27 │
+│ ├─────────────┬─────────────┤
+│ │ Yes │ No │
+│ ├─────────────┼─────────────┤
+│ │ QND7A │ QND7A │
+│ ├──────┬──────┼──────┬──────┤
+│ │ Yes │ No │ Yes │ No │
+│ ├──────┼──────┼──────┼──────┤
+│ │ QN86 │ QN86 │ QN86 │ QN86 │
+│ ├───┬──┼───┬──┼───┬──┼───┬──┤
+│ │Yes│No│Yes│No│Yes│No│Yes│No│
+├──────────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│QN26 Yes QN61 Yes QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Subtable ID│ 1│ 1│ 3│ 3│ 5│ 5│ 8│ 8│
+│ ╶────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Subtable ID│ 1│ 1│ 3│ 3│ 5│ 5│ 8│ 8│
+│ ╶─────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN61 Yes QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Subtable ID│ 9│ 9│ 11│11│ 14│14│ 16│16│
+│ ╶────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Subtable ID│ 9│ 9│ 11│11│ 14│14│ 16│16│
+╰──────────────────────────────────┴───┴──┴───┴──┴───┴──┴───┴──╯
+
+ Custom Tables
+Female
+Yes
+╭──────────────────────────────────┬───────────────────────────╮
+│ │ QN27 │
+│ ├─────────────┬─────────────┤
+│ │ Yes │ No │
+│ ├─────────────┼─────────────┤
+│ │ QND7A │ QND7A │
+│ ├──────┬──────┼──────┬──────┤
+│ │ Yes │ No │ Yes │ No │
+│ ├──────┼──────┼──────┼──────┤
+│ │ QN86 │ QN86 │ QN86 │ QN86 │
+│ ├───┬──┼───┬──┼───┬──┼───┬──┤
+│ │Yes│No│Yes│No│Yes│No│Yes│No│
+├──────────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│QN26 Yes QN61 Yes QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 4│ 4│ 4│ 4│ 4│ 4│ 4│ 4│
+│ Subtable ID│ 18│18│ 20│20│ 21│21│ 23│23│
+│ ╶────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 4│ 4│ 4│ 4│ 4│ 4│ 4│ 4│
+│ Subtable ID│ 18│18│ 20│20│ 21│21│ 23│23│
+│ ╶─────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN61 Yes QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 4│ 4│ 4│ 4│ 4│ 4│ 4│ 4│
+│ Subtable ID│ 26│26│ 27│27│ 30│30│ 31│31│
+│ ╶────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 4│ 4│ 4│ 4│ 4│ 4│ 4│ 4│
+│ Subtable ID│ 26│26│ 27│27│ 30│30│ 31│31│
+╰──────────────────────────────────┴───┴──┴───┴──┴───┴──┴───┴──╯
+
+ Custom Tables
+Female
+No
+╭──────────────────────────────────┬───────────────────────────╮
+│ │ QN27 │
+│ ├─────────────┬─────────────┤
+│ │ Yes │ No │
+│ ├─────────────┼─────────────┤
+│ │ QND7A │ QND7A │
+│ ├──────┬──────┼──────┬──────┤
+│ │ Yes │ No │ Yes │ No │
+│ ├──────┼──────┼──────┼──────┤
+│ │ QN86 │ QN86 │ QN86 │ QN86 │
+│ ├───┬──┼───┬──┼───┬──┼───┬──┤
+│ │Yes│No│Yes│No│Yes│No│Yes│No│
+├──────────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│QN26 Yes QN61 Yes QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 3│ 3│ 3│ 3│ 3│ 3│ 3│ 3│
+│ Subtable ID│ 17│17│ 19│19│ 22│22│ 24│24│
+│ ╶────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 3│ 3│ 3│ 3│ 3│ 3│ 3│ 3│
+│ Subtable ID│ 17│17│ 19│19│ 22│22│ 24│24│
+│ ╶─────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN61 Yes QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 3│ 3│ 3│ 3│ 3│ 3│ 3│ 3│
+│ Subtable ID│ 25│25│ 28│28│ 29│29│ 32│32│
+│ ╶────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Table ID │ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ Layer ID │ 3│ 3│ 3│ 3│ 3│ 3│ 3│ 3│
+│ Subtable ID│ 25│25│ 28│28│ 29│29│ 32│32│
+╰──────────────────────────────────┴───┴──┴───┴──┴───┴──┴───┴──╯
+
+ Custom Tables
+Male
+Yes
+╭───────────────────────────────────┬───────────────────────────╮
+│ │ QN27 │
+│ ├─────────────┬─────────────┤
+│ │ Yes │ No │
+│ ├─────────────┼─────────────┤
+│ │ QND7A │ QND7A │
+│ ├──────┬──────┼──────┬──────┤
+│ │ Yes │ No │ Yes │ No │
+│ ├──────┼──────┼──────┼──────┤
+│ │ QN86 │ QN86 │ QN86 │ QN86 │
+│ ├───┬──┼───┬──┼───┬──┼───┬──┤
+│ │Yes│No│Yes│No│Yes│No│Yes│No│
+├───────────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│QN26 Yes QN61 Yes QN57 Row ID │ 1│ 1│ 3│ 3│ 6│ 6│ 7│ 7│
+│ Layer Row ID│ 1│ 1│ 1│ 1│ 1│ 1│ 1│ 1│
+│ ╶─────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Row ID │ 10│10│ 11│11│ 13│13│ 15│15│
+│ Layer Row ID│ 4│ 4│ 4│ 4│ 4│ 4│ 4│ 4│
+│ ╶──────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN61 Yes QN57 Row ID │ 17│17│ 20│20│ 21│21│ 24│24│
+│ Layer Row ID│ 5│ 5│ 5│ 5│ 5│ 5│ 5│ 5│
+│ ╶─────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Row ID │ 25│25│ 28│28│ 30│30│ 31│31│
+│ Layer Row ID│ 7│ 7│ 7│ 7│ 7│ 7│ 7│ 7│
+╰───────────────────────────────────┴───┴──┴───┴──┴───┴──┴───┴──╯
+
+ Custom Tables
+Male
+No
+╭───────────────────────────────────┬───────────────────────────╮
+│ │ QN27 │
+│ ├─────────────┬─────────────┤
+│ │ Yes │ No │
+│ ├─────────────┼─────────────┤
+│ │ QND7A │ QND7A │
+│ ├──────┬──────┼──────┬──────┤
+│ │ Yes │ No │ Yes │ No │
+│ ├──────┼──────┼──────┼──────┤
+│ │ QN86 │ QN86 │ QN86 │ QN86 │
+│ ├───┬──┼───┬──┼───┬──┼───┬──┤
+│ │Yes│No│Yes│No│Yes│No│Yes│No│
+├───────────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│QN26 Yes QN61 Yes QN57 Row ID │ 2│ 2│ 4│ 4│ 5│ 5│ 8│ 8│
+│ Layer Row ID│ 2│ 2│ 2│ 2│ 2│ 2│ 2│ 2│
+│ ╶─────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Row ID │ 9│ 9│ 12│12│ 14│14│ 16│16│
+│ Layer Row ID│ 3│ 3│ 3│ 3│ 3│ 3│ 3│ 3│
+│ ╶──────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN61 Yes QN57 Row ID │ 18│18│ 19│19│ 22│22│ 23│23│
+│ Layer Row ID│ 6│ 6│ 6│ 6│ 6│ 6│ 6│ 6│
+│ ╶─────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Row ID │ 26│26│ 27│27│ 29│29│ 32│32│
+│ Layer Row ID│ 8│ 8│ 8│ 8│ 8│ 8│ 8│ 8│
+╰───────────────────────────────────┴───┴──┴───┴──┴───┴──┴───┴──╯
+
+ Custom Tables
+Female
+Yes
+╭───────────────────────────────────┬───────────────────────────╮
+│ │ QN27 │
+│ ├─────────────┬─────────────┤
+│ │ Yes │ No │
+│ ├─────────────┼─────────────┤
+│ │ QND7A │ QND7A │
+│ ├──────┬──────┼──────┬──────┤
+│ │ Yes │ No │ Yes │ No │
+│ ├──────┼──────┼──────┼──────┤
+│ │ QN86 │ QN86 │ QN86 │ QN86 │
+│ ├───┬──┼───┬──┼───┬──┼───┬──┤
+│ │Yes│No│Yes│No│Yes│No│Yes│No│
+├───────────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│QN26 Yes QN61 Yes QN57 Row ID │ 34│34│ 36│36│ 38│38│ 39│39│
+│ Layer Row ID│ 10│10│ 10│10│ 10│10│ 10│10│
+│ ╶─────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Row ID │ 41│41│ 43│43│ 46│46│ 47│47│
+│ Layer Row ID│ 11│11│ 11│11│ 11│11│ 11│11│
+│ ╶──────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN61 Yes QN57 Row ID │ 50│50│ 51│51│ 53│53│ 56│56│
+│ Layer Row ID│ 14│14│ 14│14│ 14│14│ 14│14│
+│ ╶─────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Row ID │ 58│58│ 59│59│ 62│62│ 63│63│
+│ Layer Row ID│ 16│16│ 16│16│ 16│16│ 16│16│
+╰───────────────────────────────────┴───┴──┴───┴──┴───┴──┴───┴──╯
+
+ Custom Tables
+Female
+No
+╭───────────────────────────────────┬───────────────────────────╮
+│ │ QN27 │
+│ ├─────────────┬─────────────┤
+│ │ Yes │ No │
+│ ├─────────────┼─────────────┤
+│ │ QND7A │ QND7A │
+│ ├──────┬──────┼──────┬──────┤
+│ │ Yes │ No │ Yes │ No │
+│ ├──────┼──────┼──────┼──────┤
+│ │ QN86 │ QN86 │ QN86 │ QN86 │
+│ ├───┬──┼───┬──┼───┬──┼───┬──┤
+│ │Yes│No│Yes│No│Yes│No│Yes│No│
+├───────────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│QN26 Yes QN61 Yes QN57 Row ID │ 33│33│ 35│35│ 37│37│ 40│40│
+│ Layer Row ID│ 9│ 9│ 9│ 9│ 9│ 9│ 9│ 9│
+│ ╶─────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Row ID │ 42│42│ 44│44│ 45│45│ 48│48│
+│ Layer Row ID│ 12│12│ 12│12│ 12│12│ 12│12│
+│ ╶──────────────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN61 Yes QN57 Row ID │ 49│49│ 52│52│ 54│54│ 55│55│
+│ Layer Row ID│ 13│13│ 13│13│ 13│13│ 13│13│
+│ ╶─────────────────────┼───┼──┼───┼──┼───┼──┼───┼──┤
+│ No QN57 Row ID │ 57│57│ 60│60│ 61│61│ 64│64│
+│ Layer Row ID│ 15│15│ 15│15│ 15│15│ 15│15│
+╰───────────────────────────────────┴───┴──┴───┴──┴───┴──┴───┴──╯
+])
+AT_CLEANUP
+
AT_SETUP([CTABLES categorical summary functions])
AT_CHECK([ln $top_srcdir/examples/nhtsa.sav . || cp $top_srcdir/examples/nhtsa.sav .])
AT_DATA([ctables.sps],