File: unzip.tests

package info (click to toggle)
busybox 1:1.17.1-8+deb6u11
  • links: PTS
  • area: main
  • in suites: squeeze-lts
  • size: 15,608 kB
  • ctags: 26,465
  • sloc: ansic: 182,252; sh: 6,047; cpp: 1,428; makefile: 1,031; yacc: 570; lex: 355; perl: 309; python: 251; awk: 29
file content (59 lines) | stat: -rwxr-xr-x 1,455 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/bin/sh

# Tests for unzip.
# Copyright 2006 Rob Landley <rob@landley.net>
# Copyright 2006 Glenn McGrath
# Licensed under GPL v2, see file LICENSE for details.

. ./testing.sh

# testing "test name" "commands" "expected result" "file input" "stdin"
#   file input will be file called "input"
#   test can create a file "actual" instead of writing to stdout

# Create a scratch directory

mkdir temp
cd temp

# Create test file to work with.

mkdir foo
touch foo/bar
zip foo.zip foo foo/bar > /dev/null
rm -f foo/bar
rmdir foo

# Test that unzipping just foo doesn't create bar.
testing "unzip (subdir only)" "unzip -q foo.zip foo/ && test -d foo && test ! -f foo/bar && echo yes" "yes\n" "" ""

rmdir foo
rm foo.zip

# File containing some damaged encrypted stream
testing "unzip (bad archive)" "uudecode; unzip bad.zip 2>&1; echo \$?" \
"Archive:  bad.zip
  inflating: ]3j½r«IK-%Ix
unzip: inflate error
1
" \
"" "\
begin-base64 644 bad.zip
UEsDBBQAAgkIAAAAIQA5AAAANwAAADwAAAAQAAcAXTNqwr1ywqtJGxJLLSVJ
eCkBD0AdKBk8JzQsIj01JC0/ORJQSwMEFAECCAAAAAAhADoAAAAPAAAANgAA
AAwAAQASw73Ct1DCokohPXQiNjoUNTUiHRwgLT4WHlBLAQIQABQAAggIAAAA
oQA5AAAANwAAADwAAAAQQAcADAAAACwAMgCAAAAAAABdM2rCvXLCq0kbEkst
JUl4KQEPQB0oGSY4Cz4QNgEnJSYIPVBLAQIAABQAAggAAAAAIQAqAAAADwAA
BDYAAAAMAAEADQAAADIADQAAAEEAAAASw73Ct1DKokohPXQiNzA+FAI1HCcW
NzITNFBLBQUKAC4JAA04Cw0EOhZQSwUGAQAABAIAAgCZAAAAeQAAAAIALhM=
====
"

rm *

# Clean up scratch directory.

cd ..
rm -rf temp

exit $FAILCOUNT