From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1QNuTv-0003Fl-9e for garchives@archives.gentoo.org; Sat, 21 May 2011 22:17:11 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C96DD1C006; Sat, 21 May 2011 22:17:02 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 77C051C006 for ; Sat, 21 May 2011 22:17:02 +0000 (UTC) Received: from pelican.gentoo.org (unknown [66.219.59.40]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id CE8EF1B4019 for ; Sat, 21 May 2011 22:17:01 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by pelican.gentoo.org (Postfix) with ESMTP id CD9478001F for ; Sat, 21 May 2011 22:17:00 +0000 (UTC) From: "Zac Medico" To: gentoo-commits@lists.gentoo.org Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Zac Medico" Message-ID: Subject: [gentoo-commits] proj/portage:master commit in: pym/portage/tests/resolver/ X-VCS-Repository: proj/portage X-VCS-Files: pym/portage/tests/resolver/test_merge_order.py X-VCS-Directories: pym/portage/tests/resolver/ X-VCS-Committer: zmedico X-VCS-Committer-Name: Zac Medico X-VCS-Revision: db3521bdd5c57a20a8f3bf04a84fcd65430e39c9 Date: Sat, 21 May 2011 22:17:00 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: X-Archives-Hash: 195fb8d98389514e5e5112e911de3e69 commit: db3521bdd5c57a20a8f3bf04a84fcd65430e39c9 Author: Zac Medico gentoo org> AuthorDate: Sat May 21 22:15:42 2011 +0000 Commit: Zac Medico gentoo org> CommitDate: Sat May 21 22:15:42 2011 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=3Dproj/portage.git;a= =3Dcommit;h=3Ddb3521bd test_merge_order: test solve blocker no-overlap --- pym/portage/tests/resolver/test_merge_order.py | 24 ++++++++++++++++++= +++++- 1 files changed, 23 insertions(+), 1 deletions(-) diff --git a/pym/portage/tests/resolver/test_merge_order.py b/pym/portage= /tests/resolver/test_merge_order.py index 62d16d9..bae9bca 100644 --- a/pym/portage/tests/resolver/test_merge_order.py +++ b/pym/portage/tests/resolver/test_merge_order.py @@ -17,6 +17,9 @@ class MergeOrderTestCase(TestCase): "EAPI" : "2", "DEPEND" : "!!app-misc/installed-blocker-a", }, + "app-misc/blocker-update-order-a-1" : { + "RDEPEND" : ">=3Dapp-misc/installed-old-version-blocks-a-2" + }, "app-misc/blocker-runtime-a-1" : {}, "app-misc/blocker-runtime-hard-a-1" : {}, "app-misc/circ-buildtime-a-0": {}, @@ -81,6 +84,10 @@ class MergeOrderTestCase(TestCase): "DEPEND" : "!app-misc/blocker-buildtime-a", "RDEPEND" : "!app-misc/blocker-runtime-a !!app-misc/blocker-runtime-= hard-a", }, + "app-misc/installed-old-version-blocks-a-1" : { + "RDEPEND" : "!app-misc/installed-old-version-blocks-a", + }, + "app-misc/installed-old-version-blocks-a-2" : {}, "app-misc/some-app-a-1": { "RDEPEND": "app-misc/circ-runtime-a app-misc/circ-runtime-b", }, @@ -109,6 +116,9 @@ class MergeOrderTestCase(TestCase): "DEPEND" : "!app-misc/blocker-buildtime-a", "RDEPEND" : "!app-misc/blocker-runtime-a !!app-misc/blocker-runtime-= hard-a", }, + "app-misc/installed-old-version-blocks-a-1" : { + "RDEPEND" : "!app-misc/installed-old-version-blocks-a", + }, } =20 test_cases =3D ( @@ -163,6 +173,15 @@ class MergeOrderTestCase(TestCase): ["app-misc/blocker-buildtime-a"], success =3D True, mergelist =3D ["app-misc/blocker-buildtime-a-1"]), + # We're installing a package that an old version of + # an installed package blocks. However, an update is + # available to the old package. The old package should + # be updated first, in order to solve the blocker without + # any need for blocking packages to temporarily overlap. + ResolverPlaygroundTestCase( + ["app-misc/blocker-update-order-a"], + success =3D True, + mergelist =3D ["app-misc/installed-old-version-blocks-a-2", "app-mis= c/blocker-update-order-a-1"]), # installed package has runtime blocker that # should cause it to be uninstalled # TODO: distinguish between install/uninstall tasks in mergelist @@ -171,7 +190,10 @@ class MergeOrderTestCase(TestCase): success =3D True, mergelist =3D ["app-misc/blocker-runtime-a-1", "app-misc/installed-b= locker-a-1", "!app-misc/blocker-runtime-a"]), # We have a soft buildtime blocker against an installed - # package that should cause it to be uninstalled. + # package that should cause it to be uninstalled. Note that with + # soft blockers, the blocking packages are allowed to temporarily + # overlap. This allows any essential programs/libraries provided + # by both packages to be available at all times. # TODO: distinguish between install/uninstall tasks in mergelist ResolverPlaygroundTestCase( ["app-misc/blocker-buildtime-unbuilt-a"],