109 lines
3.6 KiB
Bash
Executable file
109 lines
3.6 KiB
Bash
Executable file
#!/bin/sh
|
|
set -e
|
|
|
|
TESTDIR="$(readlink -f "$(dirname "$0")")"
|
|
. "$TESTDIR/framework"
|
|
setupenvironment
|
|
allowremovemanual
|
|
configarchitecture 'amd64'
|
|
|
|
insertinstalledpackage 'fuse' 'all' '2'
|
|
insertpackage 'unstable' 'fuse' 'all' '2'
|
|
insertpackage 'unstable' 'fuse3' 'all' '3' 'Conflicts: fuse
|
|
Provides: fuse'
|
|
|
|
insertpackage 'unstable' 'foobar-d' 'all' '1' 'Depends: fuse'
|
|
insertpackage 'unstable' 'foobar-d2' 'all' '1' 'Depends: fuse
|
|
Conflicts: fuse3'
|
|
insertpackage 'unstable' 'foobar-d3' 'all' '1' 'Depends: fuse3'
|
|
insertpackage 'unstable' 'foobar-r' 'all' '1' 'Recommends: fuse'
|
|
insertpackage 'unstable' 'foobar-r2' 'all' '1' 'Recommends: fuse
|
|
Conflicts: fuse3'
|
|
insertpackage 'unstable' 'foobar-r3' 'all' '1' 'Recommends: fuse3'
|
|
|
|
setupaptarchive
|
|
|
|
installfoobars() {
|
|
testsuccessequal 'Reading package lists...
|
|
Building dependency tree...
|
|
The following NEW packages will be installed:
|
|
foobar-d
|
|
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
|
Inst foobar-d (1 unstable [all])
|
|
Conf foobar-d (1 unstable [all])' apt install -s foobar-d
|
|
testsuccessequal 'Reading package lists...
|
|
Building dependency tree...
|
|
The following NEW packages will be installed:
|
|
foobar-d2
|
|
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
|
Inst foobar-d2 (1 unstable [all])
|
|
Conf foobar-d2 (1 unstable [all])' apt install -s foobar-d2
|
|
testsuccessequal "Reading package lists...
|
|
Building dependency tree...
|
|
The following additional packages will be installed:
|
|
fuse3
|
|
The following packages will be REMOVED:
|
|
fuse
|
|
The following NEW packages will be installed:
|
|
foobar-d3 fuse3
|
|
0 upgraded, 2 newly installed, 1 to remove and 0 not upgraded.
|
|
Remv fuse [2]$1
|
|
Inst fuse3 (3 unstable [all])
|
|
Inst foobar-d3 (1 unstable [all])
|
|
Conf fuse3 (3 unstable [all])
|
|
Conf foobar-d3 (1 unstable [all])" apt install -s foobar-d3
|
|
|
|
testsuccessequal 'Reading package lists...
|
|
Building dependency tree...
|
|
The following NEW packages will be installed:
|
|
foobar-r
|
|
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
|
Inst foobar-r (1 unstable [all])
|
|
Conf foobar-r (1 unstable [all])' apt install -s foobar-r
|
|
testsuccessequal 'Reading package lists...
|
|
Building dependency tree...
|
|
The following NEW packages will be installed:
|
|
foobar-r2
|
|
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
|
Inst foobar-r2 (1 unstable [all])
|
|
Conf foobar-r2 (1 unstable [all])' apt install -s foobar-r2
|
|
if [ -z "$1" ]; then
|
|
testsuccessequal "Reading package lists...
|
|
Building dependency tree...
|
|
The following additional packages will be installed:
|
|
fuse3
|
|
The following packages will be REMOVED:
|
|
fuse
|
|
The following NEW packages will be installed:
|
|
foobar-r3 fuse3
|
|
0 upgraded, 2 newly installed, 1 to remove and 0 not upgraded.
|
|
Remv fuse [2]$1
|
|
Inst foobar-r3 (1 unstable [all])
|
|
Inst fuse3 (3 unstable [all])
|
|
Conf foobar-r3 (1 unstable [all])
|
|
Conf fuse3 (3 unstable [all])" apt install -s foobar-r3
|
|
else
|
|
testsuccessequal "Reading package lists...
|
|
Building dependency tree...
|
|
The following additional packages will be installed:
|
|
fuse3
|
|
The following packages will be REMOVED:
|
|
fuse
|
|
The following NEW packages will be installed:
|
|
foobar-r3 fuse3
|
|
0 upgraded, 2 newly installed, 1 to remove and 0 not upgraded.
|
|
Remv fuse [2]$1
|
|
Inst fuse3 (3 unstable [all])
|
|
Inst foobar-r3 (1 unstable [all])
|
|
Conf fuse3 (3 unstable [all])
|
|
Conf foobar-r3 (1 unstable [all])" apt install -s foobar-r3
|
|
fi
|
|
}
|
|
msgmsg 'fuse has no installed dependers'
|
|
installfoobars
|
|
|
|
for i in $(seq 0 10); do
|
|
insertinstalledpackage "stuff$i" 'all' '1' 'Depends: fuse'
|
|
done
|
|
msgmsg 'fuse has many dependers installed'
|
|
installfoobars ' [stuff0:amd64 stuff1:amd64 stuff2:amd64 stuff3:amd64 stuff4:amd64 stuff5:amd64 stuff6:amd64 stuff7:amd64 stuff8:amd64 stuff9:amd64 stuff10:amd64 ]'
|