+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([ASCII driver -- rendering corner cases])
AT_SETUP([ASCII driver overwriting single-width text])
set-length 3 1
set-length 4 0
+0 5 0 あい
0 6 0 あい
0 7 0 あい
0 8 0 あい
0 9 0 あい
0 10 0 あい
-0 11 0 あい
-set-length 6 5
-set-length 7 4
-set-length 8 3
-set-length 9 2
-set-length 10 1
-set-length 11 0
+set-length 5 5
+set-length 6 4
+set-length 7 3
+set-length 8 2
+set-length 9 1
+set-length 10 0
])
AT_CHECK([render-test --draw-mode input], [0], [dnl
àéî
Reading free-form data from INLINE.
+--------+------+
|Variable|Format|
-#========#======#
++--------+------+
|x |F8.0 |
|y |F8.0 |
|a |A23 |
])
AT_CLEANUP
+
+AT_SETUP([ASCII unicode box chars])
+
+AT_DATA([uc.sps], [dnl
+SET FORMAT=F8.4.
+DATA LIST NOTABLE LIST /x * .
+BEGIN DATA.
+1
+2
+3
+END DATA.
+
+DESCRIPTIVES X.
+])
+
+
+AT_CHECK([pspp -O box=unicode uc.sps], [0], [dnl
+ Descriptive Statistics
+╭────────────────────┬─┬──────┬───────┬───────┬───────╮
+│ │N│ Mean │Std Dev│Minimum│Maximum│
+├────────────────────┼─┼──────┼───────┼───────┼───────┤
+│x │3│2.0000│ 1.0000│ 1.0000│ 3.0000│
+│Valid N (listwise) │3│ │ │ │ │
+│Missing N (listwise)│0│ │ │ │ │
+╰────────────────────┴─┴──────┴───────┴───────┴───────╯
+])
+
+AT_CLEANUP
+
+AT_SETUP([ASCII crash on empty line])
+
+AT_DATA([print.sps], [dnl
+data list notable /x y 1-2.
+begin data.
+12
+end data.
+
+print.
+
+execute.
+])
+
+AT_CHECK([pspp print.sps], [0], [ignore])
+
+AT_CLEANUP