]> git.saurik.com Git - apt.git/blame - test/integration/test-apt-get-install-deb
tavis: run testcases a second time, but as root
[apt.git] / test / integration / test-apt-get-install-deb
CommitLineData
9c3e15ab
MV
1#!/bin/sh
2set -e
3
4TESTDIR=$(readlink -f $(dirname $0))
5. $TESTDIR/framework
6
7setupenvironment
5465192b 8configarchitecture 'amd64' 'i386'
9c3e15ab
MV
9
10# regression test for #754904
25b86db1 11testfailureequal 'E: Unable to locate package /dev/null' aptget install -qq /dev/null
9c3e15ab 12
5465192b
DK
13# only consider .deb files
14cat > foo.rpm <<EOF
9c3e15ab
MV
15I'm not a deb, I'm a teapot.
16EOF
5465192b
DK
17testfailureequal "E: Unable to locate package ./foo.rpm
18E: Couldn't find any package by glob './foo.rpm'
19E: Couldn't find any package by regex './foo.rpm'" aptget install -qq ./foo.rpm
20
21# and ensure we fail for invalid debs
22mv foo.rpm foo.deb
d61960d9
DK
23testfailure aptget install ./foo.deb
24testsuccess grep '^E: Sub-process Popen returned an error code' rootdir/tmp/testfailure.output
c9443c01
DK
25testequal "E: Encountered a section with no Package: header
26E: Problem with MergeList ${TMPWORKINGDIRECTORY}/foo.deb
27E: The package lists or status file could not be parsed or opened." tail -n 3 rootdir/tmp/testfailure.output
9c3e15ab
MV
28
29# fakeroot is currently not found, framwork needs updating
5465192b
DK
30buildsimplenativepackage 'foo' 'i386,amd64' '1.0'
31
32testfailureequal "Reading package lists...
33Building dependency tree...
34Note, selecting 'foo:i386' instead of './incoming/foo_1.0_i386.deb'
35Note, selecting 'foo' instead of './incoming/foo_1.0_amd64.deb'
36Some packages could not be installed. This may mean that you have
37requested an impossible situation or if you are using the unstable
38distribution that some required packages have not yet been created
39or been moved out of Incoming.
40The following information may help to resolve the situation:
41
42The following packages have unmet dependencies:
43 foo:i386 : Conflicts: foo but 1.0 is to be installed
44 foo : Conflicts: foo:i386 but 1.0 is to be installed
45E: Unable to correct problems, you have held broken packages." aptget install ./incoming/foo_1.0_i386.deb ./incoming/foo_1.0_amd64.deb -s -q=0
46
d61960d9 47testdpkgnotinstalled 'foo'
c9443c01 48testsuccess aptget install ./incoming/foo_1.0_i386.deb -o Debug::pkgCacheGen=1
b2640c0a 49testdpkginstalled 'foo:i386'
5465192b
DK
50
51testsuccessequal "Reading package lists...
52Building dependency tree...
53Reading state information...
54Note, selecting 'foo' instead of './incoming/foo_1.0_amd64.deb'
55The following packages will be REMOVED:
56 foo:i386
57The following NEW packages will be installed:
58 foo
590 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
60Remv foo:i386 [1.0]
c9443c01
DK
61Inst foo (1.0 local-deb [amd64])
62Conf foo (1.0 local-deb [amd64])" aptget install ./incoming/foo_1.0_amd64.deb -s -q=0
848fd2a6
JAK
63
64# Check that installing the local deb works if it is not the candidate
65echo "Package: foo
66Pin: version 1.0
67Pin-Priority: -1" > rootdir/etc/apt/preferences
68
69testsuccessequal "Reading package lists...
70Building dependency tree...
71Reading state information...
72Note, selecting 'foo' instead of './incoming/foo_1.0_amd64.deb'
73The following packages will be REMOVED:
74 foo:i386
75The following NEW packages will be installed:
76 foo
770 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
78Remv foo:i386 [1.0]
79Inst foo (1.0 local-deb [amd64])
80Conf foo (1.0 local-deb [amd64])" aptget install ./incoming/foo_1.0_amd64.deb -s -q=0