1 dnl PSPP - a program for statistical analysis.
2 dnl Copyright (C) 2017 Free Software Foundation, Inc.
4 dnl This program is free software: you can redistribute it and/or modify
5 dnl it under the terms of the GNU General Public License as published by
6 dnl the Free Software Foundation, either version 3 of the License, or
7 dnl (at your option) any later version.
9 dnl This program is distributed in the hope that it will be useful,
10 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
11 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 dnl GNU General Public License for more details.
14 dnl You should have received a copy of the GNU General Public License
15 dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
17 AT_BANNER([FILE HANDLE])
19 AT_SETUP([FILE HANDLE])
20 AT_DATA([wiggle.txt], [dnl
26 AT_DATA([file-handle.sps], [dnl
27 FILE HANDLE myhandle /NAME='wiggle.txt'.
28 DATA LIST LIST FILE=myhandle /x *.
31 AT_CHECK([pspp -O format=csv file-handle.sps], [0], [dnl
32 Table: Reading free-form data from myhandle.
45 AT_SETUP([FILE HANDLE syntax errors])
46 AT_DATA([file-handle.sps], [dnl
48 FILE HANDLE x/NAME='x.txt'.
49 FILE HANDLE x/NAME='x.txt'.
51 FILE HANDLE y/NAME=**.
52 FILE HANDLE y/LRECL=8/LRECL=8.
53 FILE HANDLE y/LRECL=**.
54 FILE HANDLE y/TABWIDTH=8/TABWIDTH=8.
55 FILE HANDLE y/TABWIDTH=**.
56 FILE HANDLE y/MODE=CHARACTER/MODE=CHARACTER.
57 FILE HANDLE y/MODE=**.
58 FILE HANDLE y/ENDS=LF/ENDS=LF.
59 FILE HANDLE y/ENDS=**.
60 FILE HANDLE y/RECFORM=FIXED/RECFORM=FIXED.
61 FILE HANDLE y/RECFORM=**.
62 FILE HANDLE y/ENCODING='UTF-8'/ENCODING='UTF-8'.
63 FILE HANDLE y/ENCODING=**.
64 FILE HANDLE y/TABWIDTH=8.
65 FILE HANDLE y/NAME='x.txt'/MODE=360.
66 FILE HANDLE y/NAME='x.txt'/MODE=FIXED.
68 AT_DATA([insert.sps], [dnl
69 INSERT FILE='file-handle.sps' ERROR=IGNORE.
71 AT_CHECK([pspp --testing-mode -O format=csv insert.sps], [1], [dnl
72 "file-handle.sps:1.13-1.14: error: FILE HANDLE: Syntax error expecting identifier.
76 "file-handle.sps:3.13: error: FILE HANDLE: File handle x is already defined. Use CLOSE FILE HANDLE before redefining a file handle.
77 3 | FILE HANDLE x/NAME='x.txt'.
80 "file-handle.sps:4.15-4.16: error: FILE HANDLE: Syntax error expecting `/'.
84 "file-handle.sps:5.20-5.21: error: FILE HANDLE: Syntax error expecting string.
85 5 | FILE HANDLE y/NAME=**.
88 "file-handle.sps:6.23-6.27: error: FILE HANDLE: Subcommand LRECL may only be specified once.
89 6 | FILE HANDLE y/LRECL=8/LRECL=8.
92 "file-handle.sps:7.21-7.22: error: FILE HANDLE: Syntax error expecting positive integer for LRECL.
93 7 | FILE HANDLE y/LRECL=**.
96 "file-handle.sps:8.26-8.33: error: FILE HANDLE: Subcommand TABWIDTH may only be specified once.
97 8 | FILE HANDLE y/TABWIDTH=8/TABWIDTH=8.
100 "file-handle.sps:9.24-9.25: error: FILE HANDLE: Syntax error expecting positive integer for TABWIDTH.
101 9 | FILE HANDLE y/TABWIDTH=**.
104 "file-handle.sps:10.30-10.33: error: FILE HANDLE: Subcommand MODE may only be specified once.
105 10 | FILE HANDLE y/MODE=CHARACTER/MODE=CHARACTER.
108 "file-handle.sps:11.20-11.21: error: FILE HANDLE: Syntax error expecting CHARACTER, BINARY, IMAGE, or 360.
109 11 | FILE HANDLE y/MODE=**.
112 "file-handle.sps:12.23-12.26: error: FILE HANDLE: Subcommand ENDS may only be specified once.
113 12 | FILE HANDLE y/ENDS=LF/ENDS=LF.
116 "file-handle.sps:13.20-13.21: error: FILE HANDLE: Syntax error expecting LF or CRLF.
117 13 | FILE HANDLE y/ENDS=**.
120 "file-handle.sps:14.29-14.35: error: FILE HANDLE: Subcommand RECFORM may only be specified once.
121 14 | FILE HANDLE y/RECFORM=FIXED/RECFORM=FIXED.
124 "file-handle.sps:15.23-15.24: error: FILE HANDLE: Syntax error expecting FIXED, VARIABLE, or SPANNED.
125 15 | FILE HANDLE y/RECFORM=**.
128 "file-handle.sps:16.32-16.39: error: FILE HANDLE: Subcommand ENCODING may only be specified once.
129 16 | FILE HANDLE y/ENCODING='UTF-8'/ENCODING='UTF-8'.
132 "file-handle.sps:17.24-17.25: error: FILE HANDLE: Syntax error expecting string.
133 17 | FILE HANDLE y/ENCODING=**.
136 "file-handle.sps:18.1-18.25: error: FILE HANDLE: Required subcommand NAME was not specified.
137 18 | FILE HANDLE y/TABWIDTH=8.
138 | ^~~~~~~~~~~~~~~~~~~~~~~~~"
140 "file-handle.sps:19.28-19.35: error: FILE HANDLE: RECFORM must be specified with MODE=360.
141 19 | FILE HANDLE y/NAME='x.txt'/MODE=360.
144 "file-handle.sps:20.33-20.37: error: FILE HANDLE: Syntax error expecting CHARACTER, BINARY, IMAGE, or 360.
145 20 | FILE HANDLE y/NAME='x.txt'/MODE=FIXED.