summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-05-24 16:59:13 -0700
committerZac Medico <zmedico@gentoo.org>2011-05-25 21:31:20 -0700
commit330f09e54dd4813e70f9d9b6f945f7a524356908 (patch)
tree367cf8bc4a8c604c0f4710ba3e8eb9d939ed17af
parentd3713109698009ad5b0bfd951073ee70b88808b2 (diff)
downloadportage-330f09e54dd4813e70f9d9b6f945f7a524356908.tar.gz
portage-330f09e54dd4813e70f9d9b6f945f7a524356908.tar.bz2
portage-330f09e54dd4813e70f9d9b6f945f7a524356908.zip
test_merge_order: test asap PDEPEND (bug #180045)
-rw-r--r--pym/_emerge/depgraph.py1
-rw-r--r--pym/portage/tests/resolver/test_merge_order.py33
2 files changed, 34 insertions, 0 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 798983537..21d5c1952 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -4633,6 +4633,7 @@ class depgraph(object):
continue
if child in asap_nodes:
continue
+ # Merge PDEPEND asap for bug #180045.
asap_nodes.append(child)
if selected_nodes and len(selected_nodes) > 1:
diff --git a/pym/portage/tests/resolver/test_merge_order.py b/pym/portage/tests/resolver/test_merge_order.py
index ba3d9b47e..e00f82054 100644
--- a/pym/portage/tests/resolver/test_merge_order.py
+++ b/pym/portage/tests/resolver/test_merge_order.py
@@ -150,6 +150,26 @@ class MergeOrderTestCase(TestCase):
},
"app-arch/xz-utils-5.0.1" : {},
"app-arch/xz-utils-5.0.2" : {},
+ "dev-util/pkgconfig-0.25-r2" : {},
+ "kde-base/kdelibs-3.5.7" : {
+ "PDEPEND" : "kde-misc/kdnssd-avahi",
+ },
+ "kde-misc/kdnssd-avahi-0.1.2" : {
+ "DEPEND" : "kde-base/kdelibs app-arch/xz-utils dev-util/pkgconfig",
+ "RDEPEND" : "kde-base/kdelibs",
+ },
+ "kde-base/kdnssd-3.5.7" : {
+ "DEPEND" : "kde-base/kdelibs",
+ "RDEPEND" : "kde-base/kdelibs",
+ },
+ "kde-base/libkdegames-3.5.7" : {
+ "DEPEND" : "kde-base/kdelibs",
+ "RDEPEND" : "kde-base/kdelibs",
+ },
+ "kde-base/kmines-3.5.7" : {
+ "DEPEND" : "kde-base/libkdegames",
+ "RDEPEND" : "kde-base/libkdegames",
+ }
}
installed = {
@@ -342,6 +362,19 @@ class MergeOrderTestCase(TestCase):
all_permutations = True,
ambiguous_merge_order = True,
mergelist = ['sys-kernel/linux-headers-2.6.39', 'sys-devel/gcc-4.5.2', 'sys-libs/glibc-2.13', ('app-arch/xz-utils-5.0.2', 'sys-devel/binutils-2.20.1')]),
+ # Test asap install of PDEPEND for bug #180045.
+ ResolverPlaygroundTestCase(
+ ["kde-base/kmines", "kde-base/kdnssd", "kde-base/kdelibs", "app-arch/xz-utils"],
+ success = True,
+ all_permutations = True,
+ ambiguous_merge_order = True,
+ merge_order_assertions = (
+ ('dev-util/pkgconfig-0.25-r2', 'kde-misc/kdnssd-avahi-0.1.2'),
+ ('kde-misc/kdnssd-avahi-0.1.2', 'kde-base/libkdegames-3.5.7'),
+ ('kde-misc/kdnssd-avahi-0.1.2', 'kde-base/kdnssd-3.5.7'),
+ ('kde-base/libkdegames-3.5.7', 'kde-base/kmines-3.5.7'),
+ ),
+ mergelist = [('kde-base/kdelibs-3.5.7', 'dev-util/pkgconfig-0.25-r2', 'kde-misc/kdnssd-avahi-0.1.2', 'app-arch/xz-utils-5.0.2', 'kde-base/libkdegames-3.5.7', 'kde-base/kdnssd-3.5.7', 'kde-base/kmines-3.5.7')]),
)
playground = ResolverPlayground(ebuilds=ebuilds, installed=installed)