UDPATE: Convert tests to Autotest framework.
[pspp-builds.git] / tests / language / data-io / update.at
1 m4_define([CHECK_UPDATE],
2   [AT_SETUP([UPDATE $1 with $2])
3    AT_DATA([a.data], [dnl
4 1aB
5 8aM
6 3aE
7 5aG
8 0aA
9 5aH
10 6aI
11 7aJ
12 2aD
13 7aK
14 1aC
15 7aL
16 4aF
17 ])
18    AT_DATA([b.data], [dnl
19 1bN
20 3bO
21 4bP
22 6bQ
23 7bR
24 9bS
25 ])
26    m4_if([$1], [sav],
27      [AT_DATA([save-a.sps], [dnl
28 DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).
29 SAVE OUTFILE='a.sav'.
30 ])
31       AT_CHECK([pspp -O format=csv save-a.sps])])
32    m4_if([$2], [sav],
33      [AT_DATA([save-b.sps], [dnl
34 DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).
35 SAVE OUTFILE='b.sav'.
36 ])
37       AT_CHECK([pspp -O format=csv save-b.sps])])
38    AT_DATA([update.sps], [dnl
39 m4_if([$1], [sav], [], [DATA LIST NOTABLE FILE='a.data' /a b c 1-3 (A).])
40 m4_if([$2], [sav], [], [DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).])
41 UPDATE
42     m4_if([$1], [sav], [FILE='a.sav'], [FILE=*]) /IN=InA /SORT
43     m4_if([$2], [sav], [FILE='b.sav'], [FILE=*]) /IN=InB /RENAME c=d
44     BY a.
45 LIST.
46 ])
47    AT_CHECK([pspp -O format=csv update.sps], [0], [dnl
48 update.sps:6: warning: UPDATE: Encountered 3 sets of duplicate cases in the master file.
49
50 Table: Data List
51 a,b,c,d,InA,InB
52 0,a,A,,1,0
53 1,b,B,N,1,1
54 1,a,C,,1,0
55 2,a,D,,1,0
56 3,b,E,O,1,1
57 4,b,F,P,1,1
58 5,a,G,,1,0
59 5,a,H,,1,0
60 6,b,I,Q,1,1
61 7,b,J,R,1,1
62 7,a,K,,1,0
63 7,a,L,,1,0
64 8,a,M,,1,0
65 9,b,,S,0,1
66 ])
67 AT_CLEANUP
68 ])
69
70 AT_BANNER([UPDATE])
71
72 CHECK_UPDATE([sav], [sav])
73 CHECK_UPDATE([sav], [inline])
74 CHECK_UPDATE([inline], [sav])