From fd66b004d8b562813993a580591a76e7ea6ea9ce Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Tue, 18 Jan 2011 15:24:43 -0800 Subject: test_multirepo: test for bug #351828 --- pym/portage/tests/resolver/test_multirepo.py | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/pym/portage/tests/resolver/test_multirepo.py b/pym/portage/tests/resolver/test_multirepo.py index e5d6bdf0d..542bdd594 100644 --- a/pym/portage/tests/resolver/test_multirepo.py +++ b/pym/portage/tests/resolver/test_multirepo.py @@ -31,8 +31,19 @@ class MultirepoTestCase(TestCase): "dev-libs/G-1::repo1": { "EAPI" : "4", "IUSE":"+x +y", "REQUIRED_USE" : "" }, "dev-libs/G-1::repo2": { "EAPI" : "4", "IUSE":"+x +y", "REQUIRED_USE" : "^^ ( x y )" }, + + "dev-libs/H-1": { "KEYWORDS": "x86", "EAPI" : "3", + "RDEPEND" : "|| ( dev-libs/I:2 dev-libs/I:1 )" }, + + "dev-libs/I-1::repo2": { "SLOT" : "1"}, + "dev-libs/I-2::repo2": { "SLOT" : "2"}, } - + + installed = { + "dev-libs/H-1": { "RDEPEND" : "|| ( dev-libs/I:2 dev-libs/I:1 )"}, + "dev-libs/I-2::repo1": {"SLOT" : "2"}, + } + sets = { "multirepotest": ( "dev-libs/A::test_repo", ) @@ -117,6 +128,16 @@ class MultirepoTestCase(TestCase): check_repo_names = True, mergelist = ["dev-libs/F-1::repo1"]), + # Dependency on installed dev-libs/C-2 ebuild for which ebuild is + # not available from the same repo should not unnecessarily pull + # in a different slot. It should just pull in the same slot from + # a different repo (bug #351828). + ResolverPlaygroundTestCase( + ["dev-libs/H"], + options = {"--update": True, "--deep": True}, + success = True, + mergelist = ["dev-libs/I-2"]), + # Check interaction between repo priority and unsatisfied # REQUIRED_USE, for bug #350254. ResolverPlaygroundTestCase( @@ -126,7 +147,8 @@ class MultirepoTestCase(TestCase): ) - playground = ResolverPlayground(ebuilds=ebuilds, sets=sets) + playground = ResolverPlayground(ebuilds=ebuilds, + installed=installed, sets=sets) try: for test_case in test_cases: playground.run_TestCase(test_case) -- cgit v1.2.3-1-g7c22