use 'best' hash for source authentication
[ntk/apt.git] / test / integration / test-sourceslist-arch-plusminus-options
1 #!/bin/sh
2 set -e
3
4 TESTDIR=$(readlink -f $(dirname $0))
5 . $TESTDIR/framework
6 setupenvironment
7 configarchitecture 'amd64'
8
9 testbinaries() {
10 msgtest 'Test acquired archs for' "$1"
11 shift
12 rm -f gotarchs.list
13 aptget update --print-uris | grep -o '/binary-[a-z0-9-]\+/Packages' | sort > gotarchs.list
14 while [ -n "$1" ]; do
15 echo "/binary-${1}/Packages"
16 shift
17 done | sort | checkdiff - gotarchs.list && msgpass || msgfail
18 }
19
20 echo 'deb http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
21 testbinaries 'default & native' 'amd64'
22 configarchitecture 'amd64' 'i386'
23 testbinaries 'default & native + foreign' 'amd64' 'i386'
24 configarchitecture 'amd64' 'i386' 'armel' 'armhf' 'mips' 'mipsel'
25 testbinaries 'default & native + many foreigns' 'amd64' 'i386' 'armel' 'armhf' 'mips' 'mipsel'
26
27 echo 'deb [arch=amd64] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
28 testbinaries 'arch=native' 'amd64'
29
30 echo 'deb [arch=mips] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
31 testbinaries 'arch=foreign' 'mips'
32
33 echo 'deb [arch=kfreebsd-armel] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
34 testbinaries 'arch=unknown' 'kfreebsd-armel'
35
36 echo 'deb [arch=amd64,i386] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
37 testbinaries 'arch=native,foreign' 'amd64' 'i386'
38
39 echo 'deb [arch=mips,armhf] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
40 testbinaries 'arch=foreign,foreign' 'mips' 'armhf'
41
42 echo 'deb [arch=kfreebsd-armel,hurd-powerpc,mipsel,armel] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
43 testbinaries 'arch=unknown,unknown,foreign,foreign' 'kfreebsd-armel' 'hurd-powerpc' 'mipsel' 'armel'
44
45 echo 'deb [arch+=amd64] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
46 testbinaries 'arch+=native' 'amd64' 'i386' 'armel' 'armhf' 'mips' 'mipsel'
47
48 echo 'deb [arch+=mips] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
49 testbinaries 'arch+=foreign' 'amd64' 'i386' 'armel' 'armhf' 'mips' 'mipsel'
50
51 echo 'deb [arch+=mips,armhf,i386] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
52 testbinaries 'arch+=foreign,foreign,foreign' 'amd64' 'i386' 'armel' 'armhf' 'mips' 'mipsel'
53
54 echo 'deb [arch+=hurd-powerpc] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
55 testbinaries 'arch+=unknown' 'amd64' 'i386' 'armel' 'armhf' 'mips' 'mipsel' 'hurd-powerpc'
56
57 echo 'deb [arch+=mips,hurd-powerpc,i386] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
58 testbinaries 'arch+=foreign,unknown,foreign' 'amd64' 'i386' 'armel' 'armhf' 'mips' 'mipsel' 'hurd-powerpc'
59
60 echo 'deb [arch-=amd64] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
61 testbinaries 'arch-=native' 'i386' 'armel' 'armhf' 'mips' 'mipsel'
62
63 echo 'deb [arch-=mips] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
64 testbinaries 'arch-=foreign' 'amd64' 'i386' 'armel' 'armhf' 'mipsel'
65
66 echo 'deb [arch-=mips,armhf,i386] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
67 testbinaries 'arch-=foreign,foreign,foreign' 'amd64' 'armel' 'mipsel'
68
69 echo 'deb [arch-=hurd-powerpc] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
70 testbinaries 'arch-=unknown' 'amd64' 'i386' 'armel' 'armhf' 'mips' 'mipsel'
71
72 echo 'deb [arch-=mips,hurd-powerpc,i386] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
73 testbinaries 'arch-=foreign,unknown,foreign' 'amd64' 'armel' 'armhf' 'mipsel'
74
75 echo 'deb [arch=mips,i386 arch-=mips] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
76 testbinaries 'substract from a arch-set' 'i386'
77
78 echo 'deb [arch=mips,i386 arch-=mips] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
79 testbinaries 'useless subtract from a arch-set' 'i386'
80
81 echo 'deb [arch=mips,i386 arch+=armhf] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
82 testbinaries 'addition to a arch-set' 'i386' 'mips' 'armhf'
83
84 echo 'deb [arch=mips,i386 arch+=mips] http://example.org/debian stable rocks' > rootdir/etc/apt/sources.list
85 testbinaries 'useless addition to a arch-set' 'i386' 'mips'