summaryrefslogtreecommitdiff
path: root/test/integration/test-explore-or-groups-in-markinstall
blob: f5898cfcaf5d83933d45e74614b87ad5a1ebda9e (plain)
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
#!/bin/sh
set -e

TESTDIR="$(readlink -f "$(dirname "$0")")"
. "$TESTDIR/framework"
setupenvironment
configarchitecture 'amd64'

insertpackage 'unstable' 'okay' 'all' '1'
insertpackage 'unstable' 'unneeded' 'all' '1'
insertpackage 'unstable' 'later' 'all' '1'

insertpackage 'unstable' 'bad-level0' 'all' '1' 'Depends: unneeded, unknown'

insertfoos() {
	insertpackage 'unstable' "foo-${1}-level0" 'all' '1' "${2}: unknown | okay | later"
	insertpackage 'unstable' "foo-${1}-level1" 'all' '1' "${2}: bad-level0 | okay | later"
}
insertfoos 'd' 'Depends'
insertfoos 'r' 'Recommends'

setupaptarchive

testsuccessheadequal() {
	msggroup 'testsuccessheadequal'
	local HEADLINES="$1"
	local CMP="$2"
	shift 2
	testsuccesswithglobalerror 'testsuccess' 'EW' "$@"
	cp "${TMPWORKINGDIRECTORY}/rootdir/tmp/testsuccess.output" "${TMPWORKINGDIRECTORY}/rootdir/tmp/testsuccessheadequal.output"
	testsuccessequal "$CMP" head -n "$HEADLINES" "${TMPWORKINGDIRECTORY}/rootdir/tmp/testsuccessheadequal.output"
	msggroup
}
checkfoos() {
	msgmsg 'Install checks with foos dependency type' "$2"
	for i in 0 1; do
		testsuccessheadequal 7 "Reading package lists...
Building dependency tree...
The following additional packages will be installed:
  okay
The following NEW packages will be installed:
  foo-${1}-level${i} okay
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded." apt install foo-${1}-level${i} -s
	done
}
checkfoos 'd' 'Depends'
checkfoos 'r' 'Recommends'