Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNagy Gabor <ngaba@petra.hos.u-szeged.hu>2007-06-04 09:37:46 -0400
committerDan McGee <dan@archlinux.org>2007-06-04 17:00:30 -0400
commit029a8a9d44c6d6c9e86671e23b3d20018d8821e0 (patch)
treed40a13793ceb18963a4a11e77b3b30ac980a92b7
parentecb594107edf66f190b19e78cf71378ddbe347fc (diff)
Add five new pactest tests where pacman currently fails
Most of these new tests deal with provisions upon sync or upgrade being changed by packages, and pacman not being smart enough to deal with it yet. Signed-off-by: Dan McGee <dan@archlinux.org>
-rw-r--r--pactest/tests/remove041.py21
-rw-r--r--pactest/tests/sync300.py15
-rw-r--r--pactest/tests/upgrade059.py28
-rw-r--r--pactest/tests/upgrade060.py22
-rw-r--r--pactest/tests/upgrade061.py23
5 files changed, 109 insertions, 0 deletions
diff --git a/pactest/tests/remove041.py b/pactest/tests/remove041.py
new file mode 100644
index 00000000..9ab7bf74
--- /dev/null
+++ b/pactest/tests/remove041.py
@@ -0,0 +1,21 @@
+self.description = "Remove a no longer needed package (multiple provision)"
+
+lp1 = pmpkg("pkg1")
+lp1.provides = ["imaginary"]
+lp1.requiredby = ["pkg3"]
+self.addpkg2db("local", lp1)
+
+lp2 = pmpkg("pkg2")
+lp2.provides = ["imaginary"]
+lp2.requiredby = ["pkg3"]
+self.addpkg2db("local", lp2)
+
+lp3 = pmpkg("pkg3")
+lp3.depends = ["imaginary"]
+self.addpkg2db("local", lp3)
+
+self.args = "-R %s" % lp1.name
+
+self.addrule("PACMAN_RETCODE=0")
+self.addrule("!PKG_EXIST=pkg1")
+self.addrule("PKG_EXIST=pkg2")
diff --git a/pactest/tests/sync300.py b/pactest/tests/sync300.py
new file mode 100644
index 00000000..85fb850d
--- /dev/null
+++ b/pactest/tests/sync300.py
@@ -0,0 +1,15 @@
+self.description = "Sync with corrupt database (broken deps)"
+
+sp1 = pmpkg("pkg1")
+sp1.depends = ["pkg2=1.1"]
+self.addpkg2db("sync", sp1)
+
+sp2 = pmpkg("pkg2", "1.0-1")
+self.addpkg2db("sync", sp2)
+
+self.args = "-S %s" % sp1.name
+
+self.addrule("PACMAN_RETCODE=1")
+self.addrule("!PKG_EXIST=pkg1")
+self.addrule("!PKG_EXIST=pkg2")
+self.addrule("!PKG_REQUIREDBY=pkg2|pkg1")
diff --git a/pactest/tests/upgrade059.py b/pactest/tests/upgrade059.py
new file mode 100644
index 00000000..933e4e74
--- /dev/null
+++ b/pactest/tests/upgrade059.py
@@ -0,0 +1,28 @@
+self.description = "Upgrade packages which would break a multiple-depend"
+
+lp1 = pmpkg("pkg1")
+lp1.depends = ["imaginary"]
+self.addpkg2db("local", lp1)
+
+lp2 = pmpkg("pkg2", "1.0-1")
+lp2.provides = ["imaginary"]
+lp2.requiredby = [ "pkg1" ]
+self.addpkg2db("local", lp2)
+
+lp3 = pmpkg("pkg3", "1.0-1")
+lp3.provides = ["imaginary"]
+lp3.requiredby = [ "pkg1" ]
+self.addpkg2db("local", lp3)
+
+p2 = pmpkg("pkg2", "1.0-2")
+self.addpkg(p2)
+
+p3 = pmpkg("pkg3", "1.0-2")
+self.addpkg(p3)
+
+self.args = "-U %s" % " ".join([p.filename() for p in p2, p3])
+
+self.addrule("PACMAN_RETCODE=1")
+self.addrule("PKG_EXIST=pkg1")
+self.addrule("PKG_VERSION=pkg2|1.0-1")
+self.addrule("PKG_VERSION=pkg3|1.0-1")
diff --git a/pactest/tests/upgrade060.py b/pactest/tests/upgrade060.py
new file mode 100644
index 00000000..dd78bba3
--- /dev/null
+++ b/pactest/tests/upgrade060.py
@@ -0,0 +1,22 @@
+self.description = "Try to upgrade two packages which would break deps"
+
+lp1 = pmpkg("pkg1")
+lp1.depends = ["pkg2=1.0"]
+self.addpkg2db("local", lp1)
+
+lp2 = pmpkg("pkg2", "1.0-1")
+lp2.requiredby = [ "pkg1" ]
+self.addpkg2db("local", lp2)
+
+p1 = pmpkg("pkg1", "1.1-1")
+p1.depends = ["pkg2=1.0-1"]
+self.addpkg(p1)
+
+p2 = pmpkg("pkg2", "1.1-1")
+self.addpkg(p2)
+
+self.args = "-U %s" % " ".join([p.filename() for p in p1, p2])
+
+self.addrule("PACMAN_RETCODE=1")
+self.addrule("PKG_VERSION=pkg1|1.0-1")
+self.addrule("PKG_VERSION=pkg2|1.0-1")
diff --git a/pactest/tests/upgrade061.py b/pactest/tests/upgrade061.py
new file mode 100644
index 00000000..0b1ed4e5
--- /dev/null
+++ b/pactest/tests/upgrade061.py
@@ -0,0 +1,23 @@
+self.description = "Try to upgrade two packages which would break deps"
+
+lp1 = pmpkg("pkg1", "1.0-1")
+lp1.depends = ["imaginary"]
+self.addpkg2db("local", lp1)
+
+lp2 = pmpkg("pkg2", "1.0-1")
+lp2.requiredby = [ "pkg1" ]
+lp2.provides = ["imaginary"]
+self.addpkg2db("local", lp2)
+
+p1 = pmpkg("pkg1", "1.0-2")
+p1.depends = ["imaginary"]
+self.addpkg(p1)
+
+p2 = pmpkg("pkg2", "1.0-2")
+self.addpkg(p2)
+
+self.args = "-U %s" % " ".join([p.filename() for p in p1, p2])
+
+self.addrule("PACMAN_RETCODE=1")
+self.addrule("PKG_VERSION=pkg1|1.0-1")
+self.addrule("PKG_VERSION=pkg2|1.0-1")