tests/tests.yml

branch
trunk
changeset 17
481a2b4be471
parent 16
29794d4d41aa
child 19
bb6e9f4af1a5
equal deleted inserted replaced
16:29794d4d41aa 17:481a2b4be471
1 - name: basic .tar 1 - name: basic .tar
2 filename: test-1.23.tar 2 filenames: test-1.23.tar
3 baseline: | 3 baseline: |
4 tar -xf $1 4 tar -xf $1
5 5
6 - name: basic .tar.gz 6 - name: basic .tar.gz
7 filename: test-1.23.tar.gz 7 filenames: test-1.23.tar.gz
8 baseline: | 8 baseline: |
9 tar -zxf $1 9 tar -zxf $1
10 10
11 - name: basic .tar.bz2 11 - name: basic .tar.bz2
12 filename: test-1.23.tar.bz2 12 filenames: test-1.23.tar.bz2
13 baseline: | 13 baseline: |
14 mkdir test-1.23 14 mkdir test-1.23
15 cd test-1.23 15 cd test-1.23
16 tar -jxf ../$1 16 tar -jxf ../$1
17 17
18 - name: basic .zip 18 - name: basic .zip
19 filename: test-1.23.zip 19 filenames: test-1.23.zip
20 baseline: | 20 baseline: |
21 mkdir test-1.23 21 mkdir test-1.23
22 cd test-1.23 22 cd test-1.23
23 unzip -q ../$1 23 unzip -q ../$1
24 24
25 - name: basic .deb 25 - name: basic .deb
26 filename: test-1.23_all.deb 26 filenames: test-1.23_all.deb
27 baseline: | 27 baseline: |
28 TD=$PWD 28 TD=$PWD
29 mkdir test-1.23 29 mkdir test-1.23
30 cd /tmp 30 cd /tmp
31 ar x $TD/$1 data.tar.gz 31 ar x $TD/$1 data.tar.gz
32 cd $TD/test-1.23 32 cd $TD/test-1.23
33 tar -zxf /tmp/data.tar.gz 33 tar -zxf /tmp/data.tar.gz
34 rm /tmp/data.tar.gz 34 rm /tmp/data.tar.gz
35 35
36 - name: recursion and permissions 36 - name: recursion and permissions
37 filename: test-recursive-badperms.tar.bz2 37 filenames: test-recursive-badperms.tar.bz2
38 options: -r 38 options: -r
39 baseline: | 39 baseline: |
40 mkdir test-recursive-badperms 40 mkdir test-recursive-badperms
41 cd test-recursive-badperms 41 cd test-recursive-badperms
42 tar -jxf ../$1 42 tar -jxf ../$1
48 if [ "x`cat test-recursive-badperms/test-badperms/testdir/testfile`" = \ 48 if [ "x`cat test-recursive-badperms/test-badperms/testdir/testfile`" = \
49 "xhey" ]; then exit 0; else exit 1; fi 49 "xhey" ]; then exit 0; else exit 1; fi
50 50
51 - name: decompression 51 - name: decompression
52 directory: inside-dir 52 directory: inside-dir
53 filename: ../test-text.gz 53 filenames: ../test-text.gz
54 baseline: | 54 baseline: |
55 zcat $1 >test-text 55 zcat $1 >test-text
56 56
57 - name: decompression with -r 57 - name: decompression with -r
58 directory: inside-dir 58 directory: inside-dir
59 filename: ../test-text.gz 59 filenames: ../test-text.gz
60 options: -r 60 options: -r
61 baseline: | 61 baseline: |
62 zcat $1 >test-text 62 zcat $1 >test-text
63 63
64 - name: decompression with -fr 64 - name: decompression with -fr
65 directory: inside-dir 65 directory: inside-dir
66 filename: ../test-text.gz 66 filenames: ../test-text.gz
67 options: -fr 67 options: -fr
68 baseline: | 68 baseline: |
69 zcat $1 >test-text 69 zcat $1 >test-text
70 70
71 - name: overwrite protection 71 - name: overwrite protection
72 filename: test-1.23.tar.bz2 72 filenames: test-1.23.tar.bz2
73 baseline: | 73 baseline: |
74 mkdir test-1.23 test-1.23.1 74 mkdir test-1.23 test-1.23.1
75 cd test-1.23.1 75 cd test-1.23.1
76 tar -jxf ../$1 76 tar -jxf ../$1
77 prerun: | 77 prerun: |
78 mkdir test-1.23 78 mkdir test-1.23
79 79
80 - name: overwrite option 80 - name: overwrite option
81 filename: test-1.23.tar.bz2 81 filenames: test-1.23.tar.bz2
82 options: -o 82 options: -o
83 baseline: | 83 baseline: |
84 mkdir test-1.23 84 mkdir test-1.23
85 cd test-1.23 85 cd test-1.23
86 tar -jxf ../$1 86 tar -jxf ../$1
87 prerun: | 87 prerun: |
88 mkdir test-1.23 88 mkdir test-1.23
89 89
90 - name: flat option 90 - name: flat option
91 directory: inside-dir 91 directory: inside-dir
92 filename: ../test-1.23.tar.bz2 92 filenames: ../test-1.23.tar.bz2
93 options: -f 93 options: -f
94 baseline: | 94 baseline: |
95 tar -jxf $1 95 tar -jxf $1
96 96
97 - name: flat recursion and permissions 97 - name: flat recursion and permissions
98 directory: inside-dir 98 directory: inside-dir
99 filename: ../test-recursive-badperms.tar.bz2 99 filenames: ../test-recursive-badperms.tar.bz2
100 options: -fr 100 options: -fr
101 baseline: | 101 baseline: |
102 tar -jxf $1 102 tar -jxf $1
103 tar -xf test-badperms.tar 103 tar -xf test-badperms.tar
104 chmod 755 testdir 104 chmod 755 testdir
105 posttest: | 105 posttest: |
106 if [ "x`cat testdir/testfile`" != "xhey" ]; then exit 1; fi 106 if [ "x`cat testdir/testfile`" != "xhey" ]; then exit 1; fi
107 107
108 - name: no files
109 error: true
110 grep: "[Uu]sage"
111
112 - name: bad file
113 error: true
114 filenames: nonexistent-file.tar
115
116 - name: not an archive
117 error: true
118 filenames: tests.yml
119
120 - name: bad options
121 options: --nonexistent-option
122 filenames: test-1.23.tar
123 error: true
124
125 - name: --version
126 options: --version
127 grep: ersion \d+\.\d+
128 filenames: test-1.23.tar
129 baseline: |
130 exit 0
131
132 - name: one good archive of many
133 filenames: tests.yml test-1.23.tar nonexistent-file.tar
134 error: true
135 baseline: |
136 tar -xf $2
137
138 - name: silence
139 filenames: tests.yml
140 options: -qq
141 error: true
142 antigrep: .
143
144 - name: can't write to directory
145 directory: inside-dir
146 filenames: ../test-1.23.tar
147 error: true
148 grep: ERROR
149 antigrep: Traceback
150 prerun: |
151 chmod 500 .
152

mercurial