summaryrefslogtreecommitdiffstats
path: root/test/pacman/tests/database012.py
blob: a1f86980cb375d2530aba636221e61af8e4d2c65 (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
# TODO: these are labeled as database packages because they sure seem to me to
# be database-type operations. In their current implementation however they are
# calling -U and -R rather than -D. Obviously the tests will need to be updated
# if this changes.
self.description = "Upgrade a package with --dbonly, no files touched"

lp = pmpkg("dummy")
lp.files = ["bin/dummy",
           "usr/man/man1/dummy.1"]
self.addpkg2db("local", lp)

p = pmpkg("dummy", "2.0-1")
p.files = ["bin/dummy",
           "bin/dummy2",
           "usr/man/man1/dummy.1"]
self.addpkg(p)

self.args = "-U --dbonly %s" % p.filename()

self.addrule("PACMAN_RETCODE=0")
self.addrule("PKG_EXIST=dummy")
self.addrule("PKG_VERSION=dummy|2.0-1")
for f in lp.files:
	self.addrule("!FILE_EXIST=%s" % f)
# TODO: I honestly think the above should NOT delete the original files, it
# should upgrade the DB entry without touching anything on the file system.
# E.g. this test should be the same as:
#    pacman -R --dbonly dummy && pacman -U --dbonly dummy.pkg.tar.gz
#for f in lp.files:
#	self.addrule("FILE_EXIST=%s" % f)
self.addrule("!FILE_EXIST=bin/dummy2")