From 53fc745aedc0a6d24abbc8bce6ca0b30c2179e5f Mon Sep 17 00:00:00 2001 From: Chantry Xavier Date: Thu, 23 Aug 2007 15:20:34 +0200 Subject: [PATCH] Add a few pactests collected over time. remove047 : Remove a package required by other packages conflict004 : a package conflicts with itself http://www.archlinux.org/pipermail/pacman-dev/2007-August/009077.html sync400 : Install package with dep that conflicts with older version of package sync401 : Ensure we choose provider already in target list http://www.archlinux.org/pipermail/pacman-dev/2007-July/009041.html sync402/sync403 (failing) : Choice between two providers http://www.archlinux.org/pipermail/pacman-dev/2007-July/008787.html Signed-off-by: Chantry Xavier --- pactest/tests/conflict004.py | 15 +++++++++++++++ pactest/tests/remove047.py | 25 +++++++++++++++++++++++++ pactest/tests/sync400.py | 25 +++++++++++++++++++++++++ pactest/tests/sync401.py | 21 +++++++++++++++++++++ pactest/tests/sync402.py | 21 +++++++++++++++++++++ pactest/tests/sync403.py | 21 +++++++++++++++++++++ 6 files changed, 128 insertions(+) create mode 100644 pactest/tests/conflict004.py create mode 100644 pactest/tests/remove047.py create mode 100644 pactest/tests/sync400.py create mode 100644 pactest/tests/sync401.py create mode 100644 pactest/tests/sync402.py create mode 100644 pactest/tests/sync403.py diff --git a/pactest/tests/conflict004.py b/pactest/tests/conflict004.py new file mode 100644 index 00000000..948017d9 --- /dev/null +++ b/pactest/tests/conflict004.py @@ -0,0 +1,15 @@ +self.description = "a package conflicts with itself" + +sp1 = pmpkg("pkg1") +sp1.conflicts = ["pkg1"] +self.addpkg2db("sync", sp1); + +sp2 = pmpkg("pkg2", "1.0-2") +self.addpkg2db("sync", sp2) + +self.args = "-S %s" % " ".join([p.name for p in sp1, sp2]) + +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_EXIST=pkg1") +self.addrule("PKG_EXIST=pkg2") +self.addrule("PKG_VERSION=pkg2|1.0-2") diff --git a/pactest/tests/remove047.py b/pactest/tests/remove047.py new file mode 100644 index 00000000..9606c2e3 --- /dev/null +++ b/pactest/tests/remove047.py @@ -0,0 +1,25 @@ +self.description = "Remove a package required by other packages" + +lp1 = pmpkg("pkg1") +lp1.requiredby = ["pkg2", "pkg3", "pkg4"] +self.addpkg2db("local", lp1) + +lp2 = pmpkg("pkg2") +lp2.depends = ["pkg1"] +self.addpkg2db("local", lp2) + +lp3 = pmpkg("pkg3") +lp3.depends = ["pkg1"] +self.addpkg2db("local", lp3) + +lp4 = pmpkg("pkg4") +lp4.depends = ["pkg1"] +self.addpkg2db("local", lp4) + +self.args = "-R pkg1 pkg2" + +self.addrule("!PACMAN_RETCODE=0") +self.addrule("PKG_EXIST=pkg1") +self.addrule("PKG_EXIST=pkg2") +self.addrule("PKG_EXIST=pkg3") +self.addrule("PKG_EXIST=pkg4") diff --git a/pactest/tests/sync400.py b/pactest/tests/sync400.py new file mode 100644 index 00000000..2ee1095d --- /dev/null +++ b/pactest/tests/sync400.py @@ -0,0 +1,25 @@ +self.description = "Install package with dep that conflicts with older version of package" + +sp1 = pmpkg("pkg1", "1.0-2") +sp1.depends = ["pkg2=1.0-2"] +self.addpkg2db("sync", sp1) + +sp2 = pmpkg("pkg2", "1.0-2") +sp2.conflicts = [ "pkg1=1.0-1" ] +self.addpkg2db("sync", sp2) + +lp1 = pmpkg("pkg1", "1.0-1") +lp1.depends = ["pkg2=1.0-1"] +self.addpkg2db("local", lp1) + +lp2 = pmpkg("pkg2", "1.0-1") +lp2.requiredby = [ "pkg1" ] +self.addpkg2db("local", lp2) + +self.args = "-S pkg1" + +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_EXIST=pkg1") +self.addrule("PKG_VERSION=pkg1|1.0-2") +self.addrule("PKG_EXIST=pkg2") +self.addrule("PKG_VERSION=pkg2|1.0-2") diff --git a/pactest/tests/sync401.py b/pactest/tests/sync401.py new file mode 100644 index 00000000..eb816377 --- /dev/null +++ b/pactest/tests/sync401.py @@ -0,0 +1,21 @@ +self.description = "Ensure we choose provider already in target list" + +sp1 = pmpkg("pkg1") +sp1.depends = ["dep"] +self.addpkg2db("sync", sp1) + +sp2 = pmpkg("pkg2") +sp2.provides = ["dep"] +self.addpkg2db("sync", sp2) + +sp3 = pmpkg("pkg3") +sp3.conflicts = ["pkg2"] +sp3.provides = ["dep"] +self.addpkg2db("sync", sp3) + +self.args = "-S pkg1 pkg2" + +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_EXIST=pkg1") +self.addrule("PKG_EXIST=pkg2") +self.addrule("!PKG_EXIST=pkg3") diff --git a/pactest/tests/sync402.py b/pactest/tests/sync402.py new file mode 100644 index 00000000..6d82f735 --- /dev/null +++ b/pactest/tests/sync402.py @@ -0,0 +1,21 @@ +self.description = "Choice between two providers (1)" + +sp1 = pmpkg("pkg1") +sp1.depends = ["dep"] +self.addpkg2db("sync", sp1) + +sp2 = pmpkg("pkg2") +sp2.provides = ["dep"] +self.addpkg2db("sync", sp2) + +sp3 = pmpkg("pkg3") +sp3.conflicts = ["pkg1"] +sp3.provides = ["dep"] +self.addpkg2db("sync", sp3) + +self.args = "-S pkg1" + +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_EXIST=pkg1") +self.addrule("PKG_EXIST=pkg2") +self.addrule("!PKG_EXIST=pkg3") diff --git a/pactest/tests/sync403.py b/pactest/tests/sync403.py new file mode 100644 index 00000000..b8d01016 --- /dev/null +++ b/pactest/tests/sync403.py @@ -0,0 +1,21 @@ +self.description = "Choice between two providers (2)" + +sp1 = pmpkg("pkg1") +sp1.depends = ["dep"] +self.addpkg2db("sync", sp1) + +sp2 = pmpkg("pkg2") +sp2.conflicts = [ "pkg1" ] +sp2.provides = [ "dep" ] +self.addpkg2db("sync", sp2) + +sp3 = pmpkg("pkg3") +sp3.provides = [ "dep" ] +self.addpkg2db("sync", sp3) + +self.args = "-S pkg1" + +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_EXIST=pkg1") +self.addrule("!PKG_EXIST=pkg2") +self.addrule("PKG_EXIST=pkg3")