work on docs
[pspp] / tests / language / stats / ctables.at
index 0eb8760a585a1ce2ed893c7974e8e8be49ac408e..efb59ca23a6d6521a54afbc8246ae9aa61c882f0 100644 (file)
@@ -648,6 +648,11 @@ variable must be specified.
 
 ctables.sps:23: error: CTABLES: Summaries may appear only on one axis.
 
+ctables.sps:23.50-23.54: note: CTABLES: This variable on the layers axis has a
+summary.
+   23 | CTABLES /TABLE qn113 [COUNT] BY qn114 [COUNT] BY qn116 [COUNT].
+      |                                                  ^~~~~
+
 ctables.sps:23.16-23.20: note: CTABLES: This variable on the rows axis has a
 summary.
    23 | CTABLES /TABLE qn113 [COUNT] BY qn114 [COUNT] BY qn116 [COUNT].
@@ -658,10 +663,10 @@ summary.
    23 | CTABLES /TABLE qn113 [COUNT] BY qn114 [COUNT] BY qn116 [COUNT].
       |                                 ^~~~~
 
-ctables.sps:23.50-23.54: note: CTABLES: This variable on the layers axis has a
-summary.
+ctables.sps:23.33-23.37: note: CTABLES: This is a scale variable, so it always
+has a summary even if the syntax does not explicitly specify one.
    23 | CTABLES /TABLE qn113 [COUNT] BY qn114 [COUNT] BY qn116 [COUNT].
-      |                                                  ^~~~~
+      |                                 ^~~~~
 ]])
 AT_CLEANUP
 
@@ -2529,3 +2534,183 @@ s&../../..&MM/DD/YY&'], [0], [dnl
 Generated HH:MM:SS on MM/DD/YY
 ])
 AT_CLEANUP
+
+AT_SETUP([CTABLES area definitions])
+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 qn61 > qn57 BY qnd7a > qn86 + qn64b BY qns3a[TABLE.ID, LAYER.ID, SUBTABLE.ID]
+    /SLABELS POSITION=ROW
+    /TABLE qn61 > qn57 BY qnd7a > qn86 + qn64b BY qns3a[ROW.ID, LAYERROW.ID]
+    /SLABELS POSITION=ROW
+    /TABLE qn61 > qn57 BY qnd7a > qn86 + qn64b BY qns3a[COL.ID, LAYERCOL.ID]
+    /SLABELS POSITION=ROW.
+]])
+AT_CHECK([pspp ctables.sps --table-look="$builddir"/all-layers.stt -O box=unicode -O width=80], [0], [dnl
+                    Custom Tables
+Male
+╭─────────────────────────────┬─────────────┬──────╮
+│                             │    QND7A    │ QN64B│
+│                             ├──────┬──────┼───┬──┤
+│                             │  Yes │  No  │   │  │
+│                             ├──────┼──────┤   │  │
+│                             │ QN86 │ QN86 │   │  │
+│                             ├───┬──┼───┬──┤   │  │
+│                             │Yes│No│Yes│No│Yes│No│
+├─────────────────────────────┼───┼──┼───┼──┼───┼──┤
+│QN61 Yes QN57 Yes Table ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Layer ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Subtable ID│  1│ 1│  2│ 2│  3│ 3│
+│             ╶───────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Table ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Layer ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Subtable ID│  1│ 1│  2│ 2│  3│ 3│
+│    ╶────────────────────────┼───┼──┼───┼──┼───┼──┤
+│     No  QN57 Yes Table ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Layer ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Subtable ID│  4│ 4│  5│ 5│  6│ 6│
+│             ╶───────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Table ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Layer ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Subtable ID│  4│ 4│  5│ 5│  6│ 6│
+╰─────────────────────────────┴───┴──┴───┴──┴───┴──╯
+
+                    Custom Tables
+Female
+╭─────────────────────────────┬─────────────┬──────╮
+│                             │    QND7A    │ QN64B│
+│                             ├──────┬──────┼───┬──┤
+│                             │  Yes │  No  │   │  │
+│                             ├──────┼──────┤   │  │
+│                             │ QN86 │ QN86 │   │  │
+│                             ├───┬──┼───┬──┤   │  │
+│                             │Yes│No│Yes│No│Yes│No│
+├─────────────────────────────┼───┼──┼───┼──┼───┼──┤
+│QN61 Yes QN57 Yes Table ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Layer ID   │  3│ 3│  3│ 3│  4│ 4│
+│                  Subtable ID│  7│ 7│  8│ 8│  9│ 9│
+│             ╶───────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Table ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Layer ID   │  3│ 3│  3│ 3│  4│ 4│
+│                  Subtable ID│  7│ 7│  8│ 8│  9│ 9│
+│    ╶────────────────────────┼───┼──┼───┼──┼───┼──┤
+│     No  QN57 Yes Table ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Layer ID   │  3│ 3│  3│ 3│  4│ 4│
+│                  Subtable ID│ 10│10│ 11│11│ 12│12│
+│             ╶───────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Table ID   │  1│ 1│  1│ 1│  2│ 2│
+│                  Layer ID   │  3│ 3│  3│ 3│  4│ 4│
+│                  Subtable ID│ 10│10│ 11│11│ 12│12│
+╰─────────────────────────────┴───┴──┴───┴──┴───┴──╯
+
+                    Custom Tables
+Male
+╭──────────────────────────────┬─────────────┬──────╮
+│                              │    QND7A    │ QN64B│
+│                              ├──────┬──────┼───┬──┤
+│                              │  Yes │  No  │   │  │
+│                              ├──────┼──────┤   │  │
+│                              │ QN86 │ QN86 │   │  │
+│                              ├───┬──┼───┬──┤   │  │
+│                              │Yes│No│Yes│No│Yes│No│
+├──────────────────────────────┼───┼──┼───┼──┼───┼──┤
+│QN61 Yes QN57 Yes Row ID      │  1│ 1│  2│ 2│  3│ 3│
+│                  Layer Row ID│  1│ 1│  1│ 1│  2│ 2│
+│             ╶────────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Row ID      │  4│ 4│  5│ 5│  6│ 6│
+│                  Layer Row ID│  3│ 3│  3│ 3│  4│ 4│
+│    ╶─────────────────────────┼───┼──┼───┼──┼───┼──┤
+│     No  QN57 Yes Row ID      │  7│ 7│  8│ 8│  9│ 9│
+│                  Layer Row ID│  5│ 5│  5│ 5│  6│ 6│
+│             ╶────────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Row ID      │ 10│10│ 11│11│ 12│12│
+│                  Layer Row ID│  7│ 7│  7│ 7│  8│ 8│
+╰──────────────────────────────┴───┴──┴───┴──┴───┴──╯
+
+                    Custom Tables
+Female
+╭──────────────────────────────┬─────────────┬──────╮
+│                              │    QND7A    │ QN64B│
+│                              ├──────┬──────┼───┬──┤
+│                              │  Yes │  No  │   │  │
+│                              ├──────┼──────┤   │  │
+│                              │ QN86 │ QN86 │   │  │
+│                              ├───┬──┼───┬──┤   │  │
+│                              │Yes│No│Yes│No│Yes│No│
+├──────────────────────────────┼───┼──┼───┼──┼───┼──┤
+│QN61 Yes QN57 Yes Row ID      │ 13│13│ 14│14│ 15│15│
+│                  Layer Row ID│  9│ 9│  9│ 9│ 10│10│
+│             ╶────────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Row ID      │ 16│16│ 17│17│ 18│18│
+│                  Layer Row ID│ 11│11│ 11│11│ 12│12│
+│    ╶─────────────────────────┼───┼──┼───┼──┼───┼──┤
+│     No  QN57 Yes Row ID      │ 19│19│ 20│20│ 21│21│
+│                  Layer Row ID│ 13│13│ 13│13│ 14│14│
+│             ╶────────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Row ID      │ 22│22│ 23│23│ 24│24│
+│                  Layer Row ID│ 15│15│ 15│15│ 16│16│
+╰──────────────────────────────┴───┴──┴───┴──┴───┴──╯
+
+                      Custom Tables
+Male
+╭─────────────────────────────────┬─────────────┬──────╮
+│                                 │    QND7A    │ QN64B│
+│                                 ├──────┬──────┼───┬──┤
+│                                 │  Yes │  No  │   │  │
+│                                 ├──────┼──────┤   │  │
+│                                 │ QN86 │ QN86 │   │  │
+│                                 ├───┬──┼───┬──┤   │  │
+│                                 │Yes│No│Yes│No│Yes│No│
+├─────────────────────────────────┼───┼──┼───┼──┼───┼──┤
+│QN61 Yes QN57 Yes Column ID      │  1│ 2│  3│ 4│  5│ 6│
+│                  Layer Column ID│  1│ 2│  3│ 4│  5│ 6│
+│             ╶───────────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Column ID      │  1│ 2│  3│ 4│  5│ 6│
+│                  Layer Column ID│  1│ 2│  3│ 4│  5│ 6│
+│    ╶────────────────────────────┼───┼──┼───┼──┼───┼──┤
+│     No  QN57 Yes Column ID      │  7│ 8│  9│10│ 11│12│
+│                  Layer Column ID│  1│ 2│  3│ 4│  5│ 6│
+│             ╶───────────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Column ID      │  7│ 8│  9│10│ 11│12│
+│                  Layer Column ID│  1│ 2│  3│ 4│  5│ 6│
+╰─────────────────────────────────┴───┴──┴───┴──┴───┴──╯
+
+                      Custom Tables
+Female
+╭─────────────────────────────────┬─────────────┬──────╮
+│                                 │    QND7A    │ QN64B│
+│                                 ├──────┬──────┼───┬──┤
+│                                 │  Yes │  No  │   │  │
+│                                 ├──────┼──────┤   │  │
+│                                 │ QN86 │ QN86 │   │  │
+│                                 ├───┬──┼───┬──┤   │  │
+│                                 │Yes│No│Yes│No│Yes│No│
+├─────────────────────────────────┼───┼──┼───┼──┼───┼──┤
+│QN61 Yes QN57 Yes Column ID      │ 13│14│ 15│16│ 17│18│
+│                  Layer Column ID│  7│ 8│  9│10│ 11│12│
+│             ╶───────────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Column ID      │ 13│14│ 15│16│ 17│18│
+│                  Layer Column ID│  7│ 8│  9│10│ 11│12│
+│    ╶────────────────────────────┼───┼──┼───┼──┼───┼──┤
+│     No  QN57 Yes Column ID      │ 19│20│ 21│22│ 23│24│
+│                  Layer Column ID│  7│ 8│  9│10│ 11│12│
+│             ╶───────────────────┼───┼──┼───┼──┼───┼──┤
+│              No  Column ID      │ 19│20│ 21│22│ 23│24│
+│                  Layer Column ID│  7│ 8│  9│10│ 11│12│
+╰─────────────────────────────────┴───┴──┴───┴──┴───┴──╯
+])
+AT_CLEANUP
+
+AT_SETUP([CTABLES summary functions])
+AT_CHECK([ln $top_srcdir/examples/nhtsa.sav . || cp $top_srcdir/examples/nhtsa.sav .])
+AT_DATA([ctables.sps],
+[[GET 'nhtsa.sav'.
+CTABLES
+    /TABLE region > qnd5 + qnd6_1 BY qnd7a + agegroup BY qns3a[COUNT, ROWPCT, COLPCT, SUBTABLEPCT]
+    /SLABELS POSITION=ROW.
+]])
+AT_CHECK([pspp ctables.sps --table-look="$builddir"/all-layers.stt -O box=unicode -O width=120], [0], [])
+AT_CLEANUP
+