summaryrefslogtreecommitdiffstats
path: root/test/integration/test-bug-604222-new-and-autoremove
blob: a53fcb76b2123fee545b1afeeab50bbe1a5aa68a (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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
#!/bin/sh
set -e

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

insertpackage 'stable' 'dummy-archive' 'i386' '0.invalid.0' 'Depends: libavcodec52, libvtk5-dev | libopenal-dev'
insertpackage 'stable' 'libavcodec52' 'i386' '4:0.5.2-6' 'Conflicts: libvtk5-dev'
insertpackage 'stable' 'libopenal-dev' 'i386' '1:1.12.854-2'
insertpackage 'stable' 'libvtk5-dev' 'i386' '5.4.2-8' 'Depends: libvtk5.4 (= 5.4.2-8)'
insertpackage 'stable' 'libvtk5.4' 'i386' '5.4.2-8' 'Depends: libavcodec52 (>= 4:0.5.1-1)'

insertpackage 'stable' 'gwenview' 'i386' '4:16.08.0-1' 'Depends: libkf5kipi-bin, libkf5kipi-data'
insertpackage 'stable' 'libkf5kipi-bin' 'i386' '4:16.08.0-1'
insertpackage 'stable' 'libkf5kipi-data' 'i386' '4:16.08.0-1' 'Breaks: libkipi-data'
insertpackage 'stable' 'libkipi-data' 'i386' '4:15.08.0-1' '' 'important'

insertpackage 'stable' 'libgphoto2-l10n' 'all' '2'
insertinstalledpackage 'libfoto1' 'i386' '1'
insertpackage 'installed,stable' 'photoapp1' 'all' '1' 'Depends: libfoto1
Recommends: libgphoto2-l10n (= 1)'
insertinstalledpackage 'photoapp2' 'all' '1'
insertpackage 'stable' 'libfoto1t64' 'i386' '1' 'Provides: libfoto1'
insertpackage 'stable' 'photoapp2' 'all' '2' 'Conflicts: photoapp1
Depends: libfoto1t64
Recommends: libgphoto2-l10n (= 2)'

setupaptarchive

testsuccessequal 'Reading package lists...
Building dependency tree...
Calculating upgrade...
The following packages have been kept back:
  photoapp2
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.' apt upgrade -s

insertinstalledpackage 'libvtk5.4' 'i386' '5.4.2-7'
testsuccess aptmark markauto 'libvtk5.4'
testmarkedauto 'libvtk5.4'

testsuccessequal "Reading package lists...
Building dependency tree...
Reading state information...
The following package was automatically installed and is no longer required:
  libvtk5.4
Use 'apt autoremove' to remove it.
The following NEW packages will be installed:
  libavcodec52
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
Inst libavcodec52 (4:0.5.2-6 stable [i386])
Conf libavcodec52 (4:0.5.2-6 stable [i386])" aptget install libavcodec52 -s

testsuccessequal "Reading package lists...
Building dependency tree...
Reading state information...
1 package was automatically installed and is no longer required.
Use 'apt autoremove' to remove it.
The following NEW packages will be installed:
  libavcodec52
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
Inst libavcodec52 (4:0.5.2-6 stable [i386])
Conf libavcodec52 (4:0.5.2-6 stable [i386])" aptget install libavcodec52 -s -o APT::Get::HideAutoRemove=small

testfailureequal "Reading package lists...
Building dependency tree...
Reading state information...
The following package was automatically installed and is no longer required:
  libvtk5.4
Use 'apt autoremove' to remove it.
The following additional packages will be installed:
  libavcodec52 libopenal-dev
The following NEW packages will be installed:
  dummy-archive libavcodec52 libopenal-dev
0 upgraded, 3 newly installed, 0 to remove and 2 not upgraded.
Need to get 0 B/126 B of archives.
After this operation, 129 kB of additional disk space will be used.
E: Trivial Only specified but this is not a trivial operation." aptget install dummy-archive --trivial-only
testequal "Reading package lists...
Building dependency tree...
Reading state information...
1 package was automatically installed and is no longer required.
Use 'apt autoremove' to remove it.
The following additional packages will be installed:
  libavcodec52 libopenal-dev
The following NEW packages will be installed:
  dummy-archive libavcodec52 libopenal-dev
0 upgraded, 3 newly installed, 0 to remove and 2 not upgraded.
Need to get 0 B/126 B of archives.
After this operation, 129 kB of additional disk space will be used.
E: Trivial Only specified but this is not a trivial operation." aptget install dummy-archive --trivial-only -o APT::Get::HideAutoRemove=small

rm -f rootdir/var/lib/dpkg/status rootdir/var/lib/apt/extended_states

if [ "$APT_SOLVER" = "3.0" ]; then
CONFLICTING='Reading package lists...
Building dependency tree...
Solving dependencies...MANUAL dummy-archive:i386
[0] Install:dummy-archive:i386=0.invalid.0 ()
[0] Install:libavcodec52:i386=4:0.5.2-6 (dummy-archive:i386=0.invalid.0)
[0] Reject:libvtk5-dev:i386=5.4.2-8 (dummy-archive:i386=0.invalid.0 -> libavcodec52:i386=4:0.5.2-6)
Item (1@0) dummy-archive:i386=0.invalid.0 ->  | libvtk5-dev:i386=5.4.2-8 | libopenal-dev:i386=1:1.12.854-2
[0] Install:libopenal-dev:i386=1:1.12.854-2 (dummy-archive:i386=0.invalid.0)

The following additional packages will be installed:
  libavcodec52 libopenal-dev
The following NEW packages will be installed:
  dummy-archive libavcodec52 libopenal-dev
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/126 B of archives.
After this operation, 129 kB of additional disk space will be used.
E: Trivial Only specified but this is not a trivial operation.'
else
CONFLICTING='Reading package lists...
Building dependency tree...
  MarkInstall dummy-archive:i386 < none -> 0.invalid.0 @un puN Ib > FU=1
    MarkInstall libavcodec52:i386 < none -> 4:0.5.2-6 @un puN > FU=0
    MarkInstall libopenal-dev:i386 < none -> 1:1.12.854-2 @un puN > FU=0
  Ignore MarkGarbage of libopenal-dev:i386 < none -> 1:1.12.854-2 @un puN > as its mode (Install) is protected
  Ignore MarkGarbage of libavcodec52:i386 < none -> 4:0.5.2-6 @un puN > as its mode (Install) is protected
The following additional packages will be installed:
  libavcodec52 libopenal-dev
The following NEW packages will be installed:
  dummy-archive libavcodec52 libopenal-dev
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/126 B of archives.
After this operation, 129 kB of additional disk space will be used.
E: Trivial Only specified but this is not a trivial operation.'
fi

testfailureequal "$CONFLICTING" aptget install dummy-archive --trivial-only -o Debug::pkgDepCache::Marker=1 -o APT::Get::HideAutoRemove=0 -o Debug::APT::Solver=1
testfailureequal "$CONFLICTING" aptget install dummy-archive --trivial-only -o Debug::pkgDepCache::Marker=1 -o APT::Get::HideAutoRemove=1 -o Debug::APT::Solver=1
testfailureequal "$CONFLICTING" aptget install dummy-archive --trivial-only -o Debug::pkgDepCache::Marker=1 -o APT::Get::HideAutoRemove=small -o Debug::APT::Solver=1

insertinstalledpackage 'my-metapackage' 'i386' '1' 'Depends: gwenview'
insertinstalledpackage 'gwenview' 'i386' '4:15.08.0-1' 'Depends: libkipi-data
Recommends: foobar' # trigger policy brokenness to avoid optimisation
insertinstalledpackage 'libkipi-data' 'i386' '4:15.08.0-1' '' 'important'
testsuccess aptmark markauto 'gwenview'

testsuccessequal "Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
The following packages have been kept back:
  gwenview
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded." apt dist-upgrade -s