+
+AT_SETUP([CTABLES simple totals])
+AT_CHECK([ln $top_srcdir/examples/nhtsa.sav . || cp $top_srcdir/examples/nhtsa.sav .])
+AT_DATA([ctables.sps],
+[[GET 'nhtsa.sav'.
+CTABLES /TABLE=qn17
+ /CATEGORIES VARIABLES=qn17 TOTAL=YES LABEL='Number responding'.
+CTABLES /TABLE=region > qn18 [MEAN, COUNT]
+ /CATEGORIES VARIABLES=region TOTAL=YES LABEL='All regions'.
+]])
+AT_CHECK([pspp ctables.sps -O box=unicode -O width=80], [0], [dnl
+ Custom Tables
+╭────────────────────────────────────────────────────────────────────────┬─────╮
+│ │Count│
+├────────────────────────────────────────────────────────────────────────┼─────┤
+│17. When you drink alcoholic beverages, which ONE of OR, something else│ 2│
+│the following beverages do you drink MOST OFTEN? Beer │ 1073│
+│ Light beer │ 620│
+│ Wine │ 1418│
+│ Wine coolers │ 137│
+│ Hard liquor or │ 888│
+│ mixed drinks │ │
+│ Flavored malt │ 83│
+│ drinks │ │
+│ Number responding │ 4221│
+╰────────────────────────────────────────────────────────────────────────┴─────╯
+
+ Custom Tables
+╭───────────────────────────────────────────────────────────────────┬────┬─────╮
+│ │Mean│Count│
+├───────────────────────────────────────────────────────────────────┼────┼─────┤
+│Region NE 18. When you drink ANSWERFROM(QN17R1), about how │4.36│ 949│
+│ many ANSWERFROM(QN17R2) do you usually drink per │ │ │
+│ sitting? │ │ │
+│ ╶────────────────────────────────────────────────────────────┼────┼─────┤
+│ MW 18. When you drink ANSWERFROM(QN17R1), about how │4.67│ 1027│
+│ many ANSWERFROM(QN17R2) do you usually drink per │ │ │
+│ sitting? │ │ │
+│ ╶────────────────────────────────────────────────────────────┼────┼─────┤
+│ S 18. When you drink ANSWERFROM(QN17R1), about how │4.71│ 1287│
+│ many ANSWERFROM(QN17R2) do you usually drink per │ │ │
+│ sitting? │ │ │
+│ ╶────────────────────────────────────────────────────────────┼────┼─────┤
+│ W 18. When you drink ANSWERFROM(QN17R1), about how │4.69│ 955│
+│ many ANSWERFROM(QN17R2) do you usually drink per │ │ │
+│ sitting? │ │ │
+│ ╶────────────────────────────────────────────────────────────┼────┼─────┤
+│ All 18. When you drink ANSWERFROM(QN17R1), about how │4.62│ 4218│
+│ regions many ANSWERFROM(QN17R2) do you usually drink per │ │ │
+│ sitting? │ │ │
+╰───────────────────────────────────────────────────────────────────┴────┴─────╯
+])
+AT_CLEANUP
+
+AT_SETUP([CTABLES subtotals])
+AT_CHECK([ln $top_srcdir/examples/nhtsa.sav . || cp $top_srcdir/examples/nhtsa.sav .])
+AT_DATA([ctables.sps],
+[[GET 'nhtsa.sav'.
+CTABLES /TABLE=qn105ba BY qns1
+ /CATEGORIES VARIABLES=qns1 [1, 2, SUBTOTAL, 3, 4, 5, SUBTOTAL].
+CTABLES /TABLE=qn105ba [COLPCT] BY qns1
+ /CATEGORIES VARIABLES=qn105ba [1, 2, 3, SUBTOTAL, 4, 5, SUBTOTAL].
+CTABLES /TABLE=qn105ba BY qns1
+ /CATEGORIES VARIABLES=qn105ba [1, 2, 3, SUBTOTAL, 4, 5, SUBTOTAL]
+ /CATEGORIES VARIABLES=qns1 [1, 2, SUBTOTAL, 3, 4, 5, SUBTOTAL].
+]])
+AT_CHECK([pspp ctables.sps -O box=unicode -O width=120], [0], [dnl
+ Custom Tables
+╭─────────────────────────────────────────────────────────┬────────────────────────────────────────────────────────────╮
+│ │ S1. Including yourself, how many members of this household │
+│ │ are age 16 or older? │
+│ ├───────┬───────┬─────────┬───────┬────────┬──────┬──────────┤
+│ │ 1 │ 2 │ Subtotal│ 3 │ 4 │ 5 │ Subtotal │
+│ ├───────┼───────┼─────────┼───────┼────────┼──────┼──────────┤
+│ │ Count │ Count │ Count │ Count │ Count │ Count│ Count │
+├─────────────────────────────────────────────────────────┼───────┼───────┼─────────┼───────┼────────┼──────┼──────────┤
+│105b. How likely is it that drivers who have Almost │ 147│ 246│ 393│ 62│ 19│ 11│ 92│
+│had too much to drink to drive safely will A. certain │ │ │ │ │ │ │ │
+│Get stopped by the police? Very likely│ 384│ 552│ 936│ 120│ 51│ 14│ 185│
+│ Somewhat │ 590│ 1249│ 1839│ 193│ 72│ 20│ 285│
+│ likely │ │ │ │ │ │ │ │
+│ Somewhat │ 278│ 647│ 925│ 84│ 32│ 6│ 122│
+│ unlikely │ │ │ │ │ │ │ │
+│ Very │ 141│ 290│ 431│ 41│ 18│ 4│ 63│
+│ unlikely │ │ │ │ │ │ │ │
+╰─────────────────────────────────────────────────────────┴───────┴───────┴─────────┴───────┴────────┴──────┴──────────╯
+
+ Custom Tables
+╭────────────────────────────────────────────────────────────┬─────────────────────────────────────────────────────────╮
+│ │ S1. Including yourself, how many members of this │
+│ │ household are age 16 or older? │
+│ ├─────────┬────────┬─────────┬────────┬─────────┬─────────┤
+│ │ 1 │ 2 │ 3 │ 4 │ 5 │6 or more│
+│ ├─────────┼────────┼─────────┼────────┼─────────┼─────────┤
+│ │ Column %│Column %│ Column %│Column %│ Column %│ Column %│
+├────────────────────────────────────────────────────────────┼─────────┼────────┼─────────┼────────┼─────────┼─────────┤
+│105b. How likely is it that drivers who have had Almost │ 9.5%│ 8.2%│ 12.4%│ 9.9%│ 20.0%│ 23.8%│
+│too much to drink to drive safely will A. Get certain │ │ │ │ │ │ │
+│stopped by the police? Very likely│ 24.9%│ 18.5%│ 24.0%│ 26.6%│ 25.5%│ 33.3%│
+│ Somewhat │ 38.3%│ 41.9%│ 38.6%│ 37.5%│ 36.4%│ 23.8%│
+│ likely │ │ │ │ │ │ │
+│ Subtotal │ 72.8%│ 68.6%│ 75.0%│ 74.0%│ 81.8%│ 81.0%│
+│ Somewhat │ 18.1%│ 21.7%│ 16.8%│ 16.7%│ 10.9%│ 9.5%│
+│ unlikely │ │ │ │ │ │ │
+│ Very │ 9.2%│ 9.7%│ 8.2%│ 9.4%│ 7.3%│ 9.5%│
+│ unlikely │ │ │ │ │ │ │
+│ Subtotal │ 27.2%│ 31.4%│ 25.0%│ 26.0%│ 18.2%│ 19.0%│
+╰────────────────────────────────────────────────────────────┴─────────┴────────┴─────────┴────────┴─────────┴─────────╯
+
+ Custom Tables
+╭─────────────────────────────────────────────────────────┬────────────────────────────────────────────────────────────╮
+│ │ S1. Including yourself, how many members of this household │
+│ │ are age 16 or older? │
+│ ├───────┬───────┬─────────┬───────┬────────┬──────┬──────────┤
+│ │ 1 │ 2 │ Subtotal│ 3 │ 4 │ 5 │ Subtotal │
+│ ├───────┼───────┼─────────┼───────┼────────┼──────┼──────────┤
+│ │ Count │ Count │ Count │ Count │ Count │ Count│ Count │
+├─────────────────────────────────────────────────────────┼───────┼───────┼─────────┼───────┼────────┼──────┼──────────┤
+│105b. How likely is it that drivers who have Almost │ 147│ 246│ 393│ 62│ 19│ 11│ 92│
+│had too much to drink to drive safely will A. certain │ │ │ │ │ │ │ │
+│Get stopped by the police? Very likely│ 384│ 552│ 936│ 120│ 51│ 14│ 185│
+│ Somewhat │ 590│ 1249│ 1839│ 193│ 72│ 20│ 285│
+│ likely │ │ │ │ │ │ │ │
+│ Subtotal │ 1121│ 2047│ 3168│ 375│ 142│ 45│ 562│
+│ Somewhat │ 278│ 647│ 925│ 84│ 32│ 6│ 122│
+│ unlikely │ │ │ │ │ │ │ │
+│ Very │ 141│ 290│ 431│ 41│ 18│ 4│ 63│
+│ unlikely │ │ │ │ │ │ │ │
+│ Subtotal │ 419│ 937│ 1356│ 125│ 50│ 10│ 185│
+╰─────────────────────────────────────────────────────────┴───────┴───────┴─────────┴───────┴────────┴──────┴──────────╯
+])
+AT_CLEANUP