OSDN Git Service

Fix some typos.
[lha/lha.git] / tests / lha-test17
1 # -*- shell-script -*-
2 message testing to remove relative path
3
4 # remove leading "../"; this behavior will be like the GNU tar.
5
6 echo -------------------------------------------------------------------
7 # "../xx/xx" -> "xx/xx"
8 (cd test-1 &&
9   $lha c $builddir/test-tmp-1.lzh ../test-1/test-a
10   ) 2> test-tmp-stderr
11                                                         check $? $LINENO
12
13 cat <<"EOF" | diff - test-tmp-stderr
14 LHa: Warning: Removing leading `../' from member name.
15 EOF
16                                                         check $? $LINENO
17
18 $lha vvq test-tmp-1.lzh | head -1
19 $lha vvq test-tmp-1.lzh | head -1 | egrep '^test-1/test-a$'
20                                                         check $? $LINENO
21
22 echo -------------------------------------------------------------------
23 # ../xx/../xx (result: xx not "../xx")
24 (cd test-1 &&
25   $lha c $builddir/test-tmp-2.lzh ../test-1/../test-a
26   ) 2> test-tmp-stderr
27                                                         check $? $LINENO
28
29 cat <<"EOF" | diff - test-tmp-stderr
30 LHa: Warning: Removing leading `../test-1/../' from member name.
31 EOF
32                                                         check $? $LINENO
33
34 $lha vvq test-tmp-2.lzh | head -1
35 $lha vvq test-tmp-2.lzh | head -1 | egrep '^test-a$'
36                                                         check $? $LINENO
37 echo -------------------------------------------------------------------
38 # ../xx/xx/../xx (result: xx not "xx/xx")
39 mkdir test-tmp-3 &&
40 cp -pr test-1 test-tmp-3 &&
41 cp -p test-a test-tmp-3
42                                                         check $? $LINENO
43 (cd test-tmp-3 &&
44   $lha c $builddir/test-tmp-3.lzh ../test-tmp-3/test-1/../test-a
45   ) 2> test-tmp-stderr
46                                                         check $? $LINENO
47
48 cat <<"EOF" | diff - test-tmp-stderr
49 LHa: Warning: Removing leading `../test-tmp-3/test-1/../' from member name.
50 EOF
51                                                         check $? $LINENO
52
53 $lha vvq test-tmp-3.lzh | head -1
54 $lha vvq test-tmp-3.lzh | head -1 | egrep '^test-a$'
55                                                         check $? $LINENO
56 echo -------------------------------------------------------------------
57 # just a ".." (result: ".")
58 mkdir test-tmp-4 &&
59 cp -pr test-1 test-tmp-4
60                                                         check $? $LINENO
61 (cd test-tmp-4/test-1 &&
62   $lha c $builddir/test-tmp-4.lzh ..
63   ) 2> test-tmp-stderr
64                                                         check $? $LINENO
65
66 cat <<"EOF" | diff - test-tmp-stderr
67 LHa: Warning: Removing leading `..' from member name.
68 LHa: Warning: Removing leading `../' from member name.
69 LHa: Warning: Removing leading `../' from member name.
70 LHa: Warning: Removing leading `../' from member name.
71 LHa: Warning: Removing leading `../' from member name.
72 EOF
73                                                         check $? $LINENO
74
75 $lha vvq test-tmp-4.lzh
76 $lha vvq test-tmp-4.lzh > test-tmp-stdout
77                                                         check $? $LINENO
78
79 cat <<"EOF" > test-tmp-expect
80 ./
81 test-1/
82 test-1/test-a
83 test-1/test-b
84 test-1/test-c
85 EOF
86
87 egrep -v -- '-lh' test-tmp-stdout | diff - test-tmp-expect
88                                                         check $? $LINENO
89 echo -------------------------------------------------------------------
90 # "xx/./xx" -> "xx/xx"
91 $lha c test-tmp-5.lzh test-1/./test-a
92                                                         check $? $LINENO
93 $lha vvq test-tmp-5.lzh
94 $lha vvq test-tmp-5.lzh > test-tmp-stdout
95                                                         check $? $LINENO
96 cat <<"EOF" > test-tmp-expect
97 test-1/test-a
98 EOF
99
100 egrep -v -- '-lh' test-tmp-stdout | diff - test-tmp-expect
101                                                         check $? $LINENO
102 echo -------------------------------------------------------------------
103 # "./xx/././xx" -> "xx/xx"
104 $lha c test-tmp-6.lzh ./test-1/././test-a
105                                                         check $? $LINENO
106 $lha vvq test-tmp-6.lzh
107 $lha vvq test-tmp-6.lzh > test-tmp-stdout
108                                                         check $? $LINENO
109 cat <<"EOF" > test-tmp-expect
110 test-1/test-a
111 EOF
112
113 egrep -v -- '-lh' test-tmp-stdout | diff - test-tmp-expect
114                                                         check $? $LINENO
115 echo -------------------------------------------------------------------
116 # "xx/./xx/./././xx" -> "xx/xx/xx"
117 mkdir test-tmp-7 &&
118 cp -pr test-1 test-tmp-7 &&
119 cp -p test-a test-tmp-7
120                                                         check $? $LINENO
121 $lha c test-tmp-7.lzh test-tmp-7/./test-1/./././test-a
122                                                         check $? $LINENO
123 $lha vvq test-tmp-7.lzh
124 $lha vvq test-tmp-7.lzh > test-tmp-stdout
125                                                         check $? $LINENO
126 cat <<"EOF" > test-tmp-expect
127 test-tmp-7/test-1/test-a
128 EOF
129
130 egrep -v -- '-lh' test-tmp-stdout | diff - test-tmp-expect
131                                                         check $? $LINENO
132 echo -------------------------------------------------------------------
133 # "./" -> "."
134 (cd test-1 &&
135   $lha c $builddir/test-tmp-8.lzh ./
136   )
137                                                         check $? $LINENO
138 $lha vvq test-tmp-8.lzh
139 $lha vvq test-tmp-8.lzh > test-tmp-stdout
140                                                         check $? $LINENO
141 cat <<"EOF" > test-tmp-expect
142 ./
143 test-a
144 test-b
145 test-c
146 EOF
147
148 egrep -v -- '-lh' test-tmp-stdout | diff - test-tmp-expect
149                                                         check $? $LINENO
150 echo -------------------------------------------------------------------
151 # "." -> "."
152 (cd test-1 &&
153   $lha c $builddir/test-tmp-9.lzh .
154   )
155                                                         check $? $LINENO
156 $lha vvq test-tmp-9.lzh
157 $lha vvq test-tmp-9.lzh > test-tmp-stdout
158                                                         check $? $LINENO
159 cat <<"EOF" > test-tmp-expect
160 ./
161 test-a
162 test-b
163 test-c
164 EOF
165
166 egrep -v -- '-lh' test-tmp-stdout | diff - test-tmp-expect
167                                                         check $? $LINENO
168 echo -------------------------------------------------------------------
169 # remove duplicated slash "xxx//xxx" -> "xxx/xxx"
170 (cd test-1 &&
171   $lha c $builddir/test-tmp-10.lzh ./test-a .//test-b .///test-c
172   )
173                                                         check $? $LINENO
174 $lha a test-tmp-10.lzh ./test-1/test-a .//test-1//test-b .///test-1///test-c
175
176 $lha vvq test-tmp-10.lzh
177 $lha vvq test-tmp-10.lzh > test-tmp-stdout
178                                                         check $? $LINENO
179 # followings is sorted by argument strings.
180 # XXX: this behavior is undesirable.
181 cat <<"EOF" > test-tmp-expect
182 test-1/test-c
183 test-1/test-b
184 test-1/test-a
185 test-c
186 test-b
187 test-a
188 EOF
189
190 egrep -v -- '-lh' test-tmp-stdout | diff - test-tmp-expect
191                                                         check $? $LINENO
192 echo -------------------------------------------------------------------