diff options
author | Nagy Gabor <ngaba@petra.hos.u-szeged.hu> | 2007-08-04 17:08:03 +0200 |
---|---|---|
committer | Dan McGee <dan@archlinux.org> | 2007-08-12 21:14:05 -0400 |
commit | b96922679e4ed14aa687bf194b766d82a1d10577 (patch) | |
tree | 221e0f21e0da80e754c6d029a20175720eb1909f | |
parent | dc5e6d5d87ceee61c38a8ecc2a87e99d49887b83 (diff) | |
download | pacman-b96922679e4ed14aa687bf194b766d82a1d10577.tar.xz |
Add two pactest for versioned conflicts.
A side effect of the previous commit ( ea9a756eeaca7398c0860b55f8abe2932ad195bd )
is that it's now possible to use versioned conflicts.
Add two new conflict pactests for showing it.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
-rw-r--r-- | lib/libalpm/conflict.c | 10 | ||||
-rw-r--r-- | pactest/tests/conflict002.py | 13 | ||||
-rw-r--r-- | pactest/tests/conflict003.py | 13 |
3 files changed, 27 insertions, 9 deletions
diff --git a/lib/libalpm/conflict.c b/lib/libalpm/conflict.c index d52f7e12..1baa0c27 100644 --- a/lib/libalpm/conflict.c +++ b/lib/libalpm/conflict.c @@ -112,13 +112,6 @@ static void check_conflict(alpm_list_t *list1, alpm_list_t *list2, for(j = alpm_pkg_get_conflicts(pkg1); j; j = j->next) { const char *conflict = j->data; - if(strcmp(pkg1name, conflict) == 0) { - /* a package cannot conflict with itself -- that's just not nice */ - _alpm_log(PM_LOG_DEBUG, "package '%s' conflicts with itself - packaging error", - pkg1name); - continue; - } - for(k = list2; k; k = k->next) { pmpkg_t *pkg2 = k->data; const char *pkg2name = alpm_pkg_get_name(pkg2); @@ -140,8 +133,7 @@ static void check_conflict(alpm_list_t *list1, alpm_list_t *list2, } } -/* Returns a alpm_list_t* of pmdepmissing_t pointers. - * conflicts are always name only */ +/* Returns a alpm_list_t* of pmdepmissing_t pointers. */ alpm_list_t *_alpm_checkconflicts(pmdb_t *db, alpm_list_t *packages) { alpm_list_t *baddeps = NULL; diff --git a/pactest/tests/conflict002.py b/pactest/tests/conflict002.py new file mode 100644 index 00000000..2e326f52 --- /dev/null +++ b/pactest/tests/conflict002.py @@ -0,0 +1,13 @@ +self.description = "conflict with version (conflict)" + +p = pmpkg("pkg1") +p.conflicts = ["pkg2<=1.0-2"] +self.addpkg(p); + +lp = pmpkg("pkg2", "1.0-1") +self.addpkg2db("local", lp) + +self.args = "-A %s" % p.filename() +self.addrule("PACMAN_RETCODE=1") +self.addrule("!PKG_EXIST=pkg1") +self.addrule("PKG_EXIST=pkg2") diff --git a/pactest/tests/conflict003.py b/pactest/tests/conflict003.py new file mode 100644 index 00000000..7205086a --- /dev/null +++ b/pactest/tests/conflict003.py @@ -0,0 +1,13 @@ +self.description = "conflict with version (no conflict)" + +p = pmpkg("pkg1") +p.conflicts = ["pkg2=1.0-2"] +self.addpkg(p); + +lp = pmpkg("pkg2", "1.0-1") +self.addpkg2db("local", lp) + +self.args = "-A %s" % p.filename() +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_EXIST=pkg1") +self.addrule("PKG_EXIST=pkg2") |