tests/tests.yml

Fri, 19 Oct 2007 22:46:20 -0400

author
brett
date
Fri, 19 Oct 2007 22:46:20 -0400
branch
trunk
changeset 28
4d88f2231d33
parent 23
039dd321a7d0
child 29
5fad99c17221
permissions
-rw-r--r--

[svn] Change all the license notices from GPLv2 to GPLv3.

Instead of checking the archive contents, figuring out what to do, and
doing it, instead we now always extract the archive to a private directory,
and then shuffle around the contents appropriately. I expected this to be
a bigger win than my benchmarks have borne out, but I'm sticking with this
strategy because it provides a cleaner separation of responsibilities
between the extractors and the archive type handlers, and also I have to
believe it's a much better way to handle bigger archives -- since we're now
reading it once and not twice.

14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
1 - name: basic .tar
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
2 filenames: test-1.23.tar
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
3 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
4 tar -xf $1
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
5
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
6 - name: basic .tar.gz
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
7 filenames: test-1.23.tar.gz
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
8 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
9 tar -zxf $1
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
10
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
11 - name: basic .tar.bz2
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
12 filenames: test-1.23.tar.bz2
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
13 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
14 mkdir test-1.23
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
15 cd test-1.23
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
16 tar -jxf ../$1
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
17
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
18 - name: basic .zip
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
19 filenames: test-1.23.zip
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
20 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
21 mkdir test-1.23
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
22 cd test-1.23
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
23 unzip -q ../$1
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
24
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
25 - name: basic .deb
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
26 filenames: test-1.23_all.deb
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
27 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
28 TD=$PWD
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
29 mkdir test-1.23
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
30 cd /tmp
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
31 ar x $TD/$1 data.tar.gz
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
32 cd $TD/test-1.23
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
33 tar -zxf /tmp/data.tar.gz
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
34 rm /tmp/data.tar.gz
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
35
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
36 - name: recursion and permissions
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
37 filenames: test-recursive-badperms.tar.bz2
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
38 options: -n -r
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
39 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
40 mkdir test-recursive-badperms
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
41 cd test-recursive-badperms
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
42 tar -jxf ../$1
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
43 mkdir test-badperms
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
44 cd test-badperms
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
45 tar -xf ../test-badperms.tar
23
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
46 chmod 700 testdir
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
47 posttest: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
48 if [ "x`cat test-recursive-badperms/test-badperms/testdir/testfile`" = \
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
49 "xhey" ]; then exit 0; else exit 1; fi
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
50
21
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
51 - name: decompressing gz
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
52 directory: inside-dir
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
53 filenames: ../test-text.gz
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
54 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
55 zcat $1 >test-text
22
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
56 posttest: |
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
57 if [ "x`cat test-text`" != "xhi" ]; then exit 1; fi
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
58
21
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
59 - name: decompressing bz2
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
60 directory: inside-dir
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
61 filenames: ../test-text.bz2
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
62 baseline: |
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
63 bzcat $1 >test-text
22
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
64 posttest: |
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
65 if [ "x`cat test-text`" != "xhi" ]; then exit 1; fi
21
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
66
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
67 - name: decompression with -r
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
68 directory: inside-dir
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
69 filenames: ../test-text.gz
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
70 options: -n -r
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
71 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
72 zcat $1 >test-text
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
73
16
29794d4d41aa [svn] There's now an entirely new object hierarchy for handlers, because the
brett
parents: 15
diff changeset
74 - name: decompression with -fr
29794d4d41aa [svn] There's now an entirely new object hierarchy for handlers, because the
brett
parents: 15
diff changeset
75 directory: inside-dir
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
76 filenames: ../test-text.gz
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
77 options: -n -fr
16
29794d4d41aa [svn] There's now an entirely new object hierarchy for handlers, because the
brett
parents: 15
diff changeset
78 baseline: |
29794d4d41aa [svn] There's now an entirely new object hierarchy for handlers, because the
brett
parents: 15
diff changeset
79 zcat $1 >test-text
29794d4d41aa [svn] There's now an entirely new object hierarchy for handlers, because the
brett
parents: 15
diff changeset
80
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
81 - name: overwrite protection
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
82 filenames: test-1.23.tar.bz2
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
83 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
84 mkdir test-1.23 test-1.23.1
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
85 cd test-1.23.1
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
86 tar -jxf ../$1
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
87 prerun: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
88 mkdir test-1.23
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
89
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
90 - name: overwrite option
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
91 filenames: test-1.23.tar.bz2
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
92 options: -n -o
14
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
93 baseline: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
94 mkdir test-1.23
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
95 cd test-1.23
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
96 tar -jxf ../$1
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
97 prerun: |
6f9e1bb59719 [svn] Add support for just decompressing files that are compressed. So, if you
brett
parents:
diff changeset
98 mkdir test-1.23
15
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
99
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
100 - name: flat option
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
101 directory: inside-dir
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
102 filenames: ../test-1.23.tar.bz2
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
103 options: -n -f
15
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
104 baseline: |
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
105 tar -jxf $1
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
106
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
107 - name: flat recursion and permissions
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
108 directory: inside-dir
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
109 filenames: ../test-recursive-badperms.tar.bz2
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
110 options: -n -fr
15
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
111 baseline: |
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
112 tar -jxf $1
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
113 tar -xf test-badperms.tar
22
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
114 chmod 700 testdir
15
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
115 posttest: |
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
116 if [ "x`cat testdir/testfile`" != "xhey" ]; then exit 1; fi
28dbd52a8bb8 [svn] Add a -f/--flat option, which will extract the archive contents into the
brett
parents: 14
diff changeset
117
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
118 - name: no files
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
119 error: true
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
120 grep: "[Uu]sage"
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
121
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
122 - name: bad file
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
123 error: true
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
124 filenames: nonexistent-file.tar
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
125
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
126 - name: not an archive
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
127 error: true
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
128 filenames: tests.yml
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
129
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
130 - name: bad options
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
131 options: -n --nonexistent-option
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
132 filenames: test-1.23.tar
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
133 error: true
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
134
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
135 - name: --version
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
136 options: -n --version
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
137 grep: ersion \d+\.\d+
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
138 filenames: test-1.23.tar
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
139 baseline: |
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
140 exit 0
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
141
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
142 - name: one good archive of many
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
143 filenames: tests.yml test-1.23.tar nonexistent-file.tar
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
144 error: true
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
145 baseline: |
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
146 tar -xf $2
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
147
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
148 - name: silence
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
149 filenames: tests.yml
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
150 options: -n -qq
17
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
151 error: true
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
152 antigrep: .
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
153
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
154 - name: can't write to directory
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
155 directory: inside-dir
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
156 filenames: ../test-1.23.tar
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
157 error: true
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
158 grep: ERROR
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
159 antigrep: Traceback
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
160 prerun: |
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
161 chmod 500 .
481a2b4be471 [svn] Lots of tests for various boundary cases, and slightly better handling for
brett
parents: 16
diff changeset
162
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
163 - name: list contents of one file
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
164 options: -n -l
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
165 filenames: test-1.23.tar
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
166 output: |
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
167 test-1.23/
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
168 test-1.23/1/
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
169 test-1.23/1/2/
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
170 test-1.23/1/2/3
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
171 test-1.23/a/
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
172 test-1.23/a/b
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
173 test-1.23/foobar
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
174
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
175 - name: list contents of multiple files
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
176 options: -n --table
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
177 filenames: test-1.23_all.deb test-1.23.zip
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
178 output: |
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
179 test-1.23_all.deb:
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
180 1/
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
181 1/2/
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
182 1/2/3
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
183 a/
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
184 a/b
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
185 foobar
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
186
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
187 test-1.23.zip:
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
188 1/2/3
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
189 a/b
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
190 foobar
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
191
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
192 - name: list contents of compressed file
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
193 options: -n -t
19
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
194 filenames: test-text.gz
bb6e9f4af1a5 [svn] Rename the program to dtrx.
brett
parents: 17
diff changeset
195 output: test-text
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
196
21
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
197 - name: default behavior with one directory (gz)
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
198 options: -n
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
199 filenames: test-onedir.tar.gz
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
200 baseline: |
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
201 mkdir test-onedir
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
202 cd test-onedir
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
203 tar -zxf ../$1
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
204
21
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
205 - name: one directory extracted inside another (gz)
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
206 options: ""
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
207 filenames: test-onedir.tar.gz
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
208 input: i
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
209 baseline: |
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
210 mkdir test-onedir
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
211 cd test-onedir
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
212 tar -zxf ../$1
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
213
21
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
214 - name: one directory extracted with rename (gz)
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
215 options: ""
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
216 filenames: test-onedir.tar.gz
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
217 input: r
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
218 baseline: |
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
219 tar -zxf $1
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
220 mv test test-onedir
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
221
21
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
222 - name: one directory extracted here (gz)
20
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
223 options: ""
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
224 filenames: test-onedir.tar.gz
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
225 input: h
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
226 baseline: |
69c93c3e6972 [svn] If the archive contains one directory with the "wrong" name, ask the user
brett
parents: 19
diff changeset
227 tar -zxf $1
21
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
228
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
229 - name: default behavior with one directory (bz2)
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
230 options: -n
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
231 filenames: test-onedir.tar.gz
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
232 baseline: |
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
233 mkdir test-onedir
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
234 cd test-onedir
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
235 tar -zxf ../$1
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
236
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
237 - name: one directory extracted inside another (bz2)
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
238 options: ""
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
239 filenames: test-onedir.tar.gz
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
240 input: i
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
241 baseline: |
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
242 mkdir test-onedir
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
243 cd test-onedir
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
244 tar -zxf ../$1
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
245
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
246 - name: one directory extracted with rename (bz2)
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
247 options: ""
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
248 filenames: test-onedir.tar.gz
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
249 input: r
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
250 baseline: |
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
251 tar -zxf $1
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
252 mv test test-onedir
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
253
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
254 - name: one directory extracted here (bz2)
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
255 options: ""
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
256 filenames: test-onedir.tar.gz
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
257 input: h
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
258 baseline: |
fd3e10410040 [svn] Do some tests with a .tar.bz2 as well as a .tar.gz. I thought there were
brett
parents: 20
diff changeset
259 tar -zxf $1
22
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
260
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
261 - name: bomb with preceding dot in the table
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
262 filenames: test-dot-first-bomb.tar.gz
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
263 options: ""
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
264 antigrep: one entry
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
265 baseline: |
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
266 mkdir test-dot-first-bomb
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
267 cd test-dot-first-bomb
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
268 tar -zxf ../$1
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
269
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
270 - name: one directory preceded by dot in the table
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
271 filenames: test-dot-first-onedir.tar.gz
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
272 options: ""
28
4d88f2231d33 [svn] Change all the license notices from GPLv2 to GPLv3.
brett
parents: 23
diff changeset
273 grep: "one entry: (./)?dir/"
22
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
274 input: h
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
275 baseline: |
b240777ae53e [svn] Improve the way we check archive contents. If all the entries look like
brett
parents: 21
diff changeset
276 tar -zxf $1
23
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
277
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
278 - name: two one-item archives with different answers
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
279 filenames: test-onedir.tar.gz test-onedir.tar.gz
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
280 options: ""
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
281 input: |
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
282 h
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
283 r
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
284 baseline: |
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
285 tar -zxf $1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
286 mv test test-onedir
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
287 tar -zxf $1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
288
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
289 - name: interactive recursion (always)
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
290 filenames: test-recursive-badperms.tar.bz2 test-recursive-badperms.tar.bz2
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
291 options: ""
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
292 input: |
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
293 i
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
294 a
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
295 i
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
296 baseline: |
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
297 extract() {
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
298 mkdir test-recursive-badperms$2
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
299 cd test-recursive-badperms$2
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
300 tar -jxf ../$1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
301 mkdir test-badperms
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
302 cd test-badperms
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
303 tar -xf ../test-badperms.tar
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
304 chmod 700 testdir
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
305 cd ../..
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
306 }
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
307 extract $1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
308 extract $1 .1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
309
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
310 - name: interactive recursion (once)
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
311 filenames: test-recursive-badperms.tar.bz2 test-recursive-badperms.tar.bz2
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
312 options: ""
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
313 input: |
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
314 i
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
315 o
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
316 i
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
317 n
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
318 baseline: |
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
319 mkdir test-recursive-badperms
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
320 cd test-recursive-badperms
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
321 tar -jxf ../$1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
322 mkdir test-badperms
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
323 cd test-badperms
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
324 tar -xf ../test-badperms.tar
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
325 chmod 700 testdir
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
326 cd ../..
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
327 mkdir test-recursive-badperms.1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
328 cd test-recursive-badperms.1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
329 tar -jxf ../$1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
330
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
331 - name: interactive recursion (never)
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
332 filenames: test-recursive-badperms.tar.bz2 test-recursive-badperms.tar.bz2
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
333 options: ""
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
334 input: |
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
335 i
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
336 v
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
337 i
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
338 baseline: |
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
339 extract() {
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
340 mkdir test-recursive-badperms$2
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
341 cd test-recursive-badperms$2
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
342 tar -jxf ../$1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
343 cd ..
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
344 }
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
345 extract $1
039dd321a7d0 [svn] If an archive contains other archives, and the user didn't specify that
brett
parents: 22
diff changeset
346 extract $1 .1

mercurial