From 029a8a9d44c6d6c9e86671e23b3d20018d8821e0 Mon Sep 17 00:00:00 2001 From: Nagy Gabor Date: Mon, 4 Jun 2007 09:37:46 -0400 Subject: 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 --- pactest/tests/remove041.py | 21 +++++++++++++++++++++ pactest/tests/sync300.py | 15 +++++++++++++++ pactest/tests/upgrade059.py | 28 ++++++++++++++++++++++++++++ pactest/tests/upgrade060.py | 22 ++++++++++++++++++++++ pactest/tests/upgrade061.py | 23 +++++++++++++++++++++++ 5 files changed, 109 insertions(+) create mode 100644 pactest/tests/remove041.py create mode 100644 pactest/tests/sync300.py create mode 100644 pactest/tests/upgrade059.py create mode 100644 pactest/tests/upgrade060.py create mode 100644 pactest/tests/upgrade061.py (limited to 'pactest') 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") -- cgit v1.2.3