tests: Convert tests for overwriting files to Autotest framework.
[pspp-builds.git] / tests / data / por-file.at
1 AT_BANNER([portable files])
2
3 AT_SETUP([overwriting portable file])
4 AT_DATA([output.por], [abcdef
5 ])
6 cp output.por output.por.backup
7 AT_DATA([porfile.sps], [dnl
8 DATA LIST NOTABLE/x 1.
9 BEGIN DATA.
10 5
11 END DATA.
12 EXPORT OUTFILE='output.por'.
13 ])
14 AT_CHECK([pspp -O format=csv porfile.sps])
15 AT_CHECK([cmp output.por output.por.backup], [1], [ignore])
16 AT_CLEANUP
17
18 AT_SETUP([overwriting portable file atomically])
19 AT_DATA([output.por], [abcdef
20 ])
21 cp output.por output.por.backup
22 AT_DATA([porfile.sps],
23 [[DATA LIST NOTABLE/x 1.
24 BEGIN DATA.
25 5
26 END DATA.
27 XEXPORT OUTFILE='output.por'.
28 HOST COMMAND=['kill -TERM $PPID'].
29 ]])
30 AT_CHECK([pspp -O format=csv porfile.sps], [143], [], [ignore])
31 AT_CHECK([cmp output.por output.por.backup])
32 AT_CHECK(
33   [for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done])
34 AT_CLEANUP
35
36 AT_SETUP([write to same portable file being read])
37 AT_DATA([export.sps], [dnl
38 DATA LIST NOTABLE/x 1.
39 BEGIN DATA.
40 2
41 END DATA.
42 EXPORT OUTFILE='data.por'.
43 ])
44 AT_CHECK([pspp -O format=csv export.sps])
45 AT_CHECK([test -s data.por])
46 AT_CHECK(
47   [for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done])
48 AT_DATA([export2.sps], [dnl
49 IMPORT FILE='data.por'.
50 COMPUTE y = x * 2.
51 EXPORT OUTFILE='data.por'.
52 ])
53 AT_CHECK([pspp -O format=csv export2.sps])
54 AT_CHECK(
55   [for file in *.tmp*; do if test -e $file; then echo $file; exit 1; fi; done])
56 AT_DATA([export3.sps], [dnl
57 IMPORT FILE='data.por'.
58 LIST.
59 ])
60 AT_CHECK([pspp -O format=csv export3.sps], [0], [dnl
61 Table: Data List
62 X,Y
63 2,4.00
64 ])
65 AT_CLEANUP