xref: /aosp_15_r20/system/libziparchive/cli-tests/zipinfo.test (revision adcb0a6279ea715828f9bc5e351569419e478774)
1*adcb0a62SAndroid Build Coastguard Worker# zipinfo tests.
2*adcb0a62SAndroid Build Coastguard Worker
3*adcb0a62SAndroid Build Coastguard Worker# Note: since "master key", Android uses libziparchive for all zip file
4*adcb0a62SAndroid Build Coastguard Worker# handling, and that scans the whole central directory immediately. Not only
5*adcb0a62SAndroid Build Coastguard Worker# lookups by name but also iteration is implemented using the resulting hash
6*adcb0a62SAndroid Build Coastguard Worker# table, meaning that any test that makes assumptions about iteration order
7*adcb0a62SAndroid Build Coastguard Worker# will fail on Android.
8*adcb0a62SAndroid Build Coastguard Worker
9*adcb0a62SAndroid Build Coastguard Workername: zipinfo -1
10*adcb0a62SAndroid Build Coastguard Workercommand: zipinfo -1 $FILES/example.zip | sort
11*adcb0a62SAndroid Build Coastguard Workerexpected-stdout:
12*adcb0a62SAndroid Build Coastguard Worker	d1/
13*adcb0a62SAndroid Build Coastguard Worker	d1/d2/a.txt
14*adcb0a62SAndroid Build Coastguard Worker	d1/d2/b.txt
15*adcb0a62SAndroid Build Coastguard Worker	d1/d2/c.txt
16*adcb0a62SAndroid Build Coastguard Worker	d1/d2/dir/
17*adcb0a62SAndroid Build Coastguard Worker	d1/d2/empty.txt
18*adcb0a62SAndroid Build Coastguard Worker	d1/d2/x.txt
19*adcb0a62SAndroid Build Coastguard Worker---
20*adcb0a62SAndroid Build Coastguard Worker
21*adcb0a62SAndroid Build Coastguard Workername: zipinfo header
22*adcb0a62SAndroid Build Coastguard Workercommand: zipinfo $FILES/example.zip | head -2
23*adcb0a62SAndroid Build Coastguard Workerexpected-stdout:
24*adcb0a62SAndroid Build Coastguard Worker	Archive:  $FILES/example.zip
25*adcb0a62SAndroid Build Coastguard Worker	Zip file size: 1082 bytes, number of entries: 7
26*adcb0a62SAndroid Build Coastguard Worker---
27*adcb0a62SAndroid Build Coastguard Worker
28*adcb0a62SAndroid Build Coastguard Workername: zipinfo footer
29*adcb0a62SAndroid Build Coastguard Workercommand: zipinfo $FILES/example.zip | tail -1
30*adcb0a62SAndroid Build Coastguard Workerexpected-stdout:
31*adcb0a62SAndroid Build Coastguard Worker	7 files, 1033 bytes uncompressed, 20 bytes compressed:  98.1%
32*adcb0a62SAndroid Build Coastguard Worker---
33*adcb0a62SAndroid Build Coastguard Worker
34*adcb0a62SAndroid Build Coastguard Workername: zipinfo directory
35*adcb0a62SAndroid Build Coastguard Worker# The RI doesn't use ISO dates.
36*adcb0a62SAndroid Build Coastguard Workercommand: zipinfo $FILES/example.zip d1/ | sed s/17-Jun-/2017-06-/
37*adcb0a62SAndroid Build Coastguard Workerexpected-stdout:
38*adcb0a62SAndroid Build Coastguard Worker	drwxr-x---  3.0 unx        0 bx stor 2017-06-04 08:40 d1/
39*adcb0a62SAndroid Build Coastguard Worker---
40*adcb0a62SAndroid Build Coastguard Worker
41*adcb0a62SAndroid Build Coastguard Workername: zipinfo stored
42*adcb0a62SAndroid Build Coastguard Worker# The RI doesn't use ISO dates.
43*adcb0a62SAndroid Build Coastguard Workercommand: zipinfo $FILES/example.zip d1/d2/empty.txt | sed s/17-Jun-/2017-06-/
44*adcb0a62SAndroid Build Coastguard Workerexpected-stdout:
45*adcb0a62SAndroid Build Coastguard Worker	-rw-r-----  3.0 unx        0 bx stor 2017-06-04 08:43 d1/d2/empty.txt
46*adcb0a62SAndroid Build Coastguard Worker---
47*adcb0a62SAndroid Build Coastguard Worker
48*adcb0a62SAndroid Build Coastguard Workername: zipinfo deflated
49*adcb0a62SAndroid Build Coastguard Worker# The RI doesn't use ISO dates.
50*adcb0a62SAndroid Build Coastguard Workercommand: zipinfo $FILES/example.zip d1/d2/x.txt | sed s/17-Jun-/2017-06-/
51*adcb0a62SAndroid Build Coastguard Workerexpected-stdout:
52*adcb0a62SAndroid Build Coastguard Worker	-rw-r-----  3.0 unx     1024 tx defN 2017-06-04 08:45 d1/d2/x.txt
53*adcb0a62SAndroid Build Coastguard Worker---
54