| # Copyright 2013 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| from portage.tests import TestCase |
| from portage.tests.resolver.ResolverPlayground import (ResolverPlayground, |
| ResolverPlaygroundTestCase) |
| |
| class AutounmaskMultilibUseTestCase(TestCase): |
| |
| def testAutounmaskMultilibUse(self): |
| |
| self.todo = True |
| |
| ebuilds = { |
| "x11-proto/xextproto-7.2.1-r1": { |
| "EAPI": "5", |
| "IUSE": "abi_x86_32 abi_x86_64", |
| }, |
| "x11-libs/libXaw-1.0.11-r2": { |
| "EAPI": "5", |
| "IUSE": "abi_x86_32 abi_x86_64", |
| "RDEPEND": "x11-proto/xextproto[abi_x86_32(-)?,abi_x86_64(-)?]" |
| }, |
| "app-emulation/emul-linux-x86-xlibs-20130224-r2": { |
| "EAPI": "5", |
| "RDEPEND": "x11-libs/libXaw[abi_x86_32]" |
| }, |
| "games-util/steam-client-meta-0-r20130514": { |
| "EAPI": "5", |
| "RDEPEND": "app-emulation/emul-linux-x86-xlibs" |
| } |
| } |
| |
| installed = { |
| "x11-proto/xextproto-7.2.1-r1": { |
| "EAPI": "5", |
| "IUSE": "abi_x86_32 abi_x86_64", |
| "USE": "abi_x86_32 abi_x86_64" |
| }, |
| "x11-libs/libXaw-1.0.11-r2": { |
| "EAPI": "5", |
| "IUSE": "abi_x86_32 abi_x86_64", |
| "RDEPEND": "x11-proto/xextproto[abi_x86_32(-)?,abi_x86_64(-)?]", |
| "USE": "abi_x86_32 abi_x86_64" |
| }, |
| "app-emulation/emul-linux-x86-xlibs-20130224-r2": { |
| "EAPI": "5", |
| "RDEPEND": "x11-libs/libXaw[abi_x86_32]" |
| }, |
| "games-util/steam-client-meta-0-r20130514": { |
| "EAPI": "5", |
| "RDEPEND": "app-emulation/emul-linux-x86-xlibs" |
| } |
| } |
| |
| user_config = { |
| #"make.conf" : ("USE=\"abi_x86_32 abi_x86_64\"",) |
| "make.conf" : ("USE=\"abi_x86_64\"",) |
| } |
| |
| world = ("games-util/steam-client-meta",) |
| |
| test_cases = ( |
| |
| # Test autounmask solving of multilib use deps for bug #481628. |
| # We would like it to suggest some USE changes, but instead it |
| # currently fails with a SLOT conflict. |
| |
| ResolverPlaygroundTestCase( |
| ["x11-proto/xextproto", "x11-libs/libXaw"], |
| options = {"--oneshot": True, "--autounmask": True, |
| "--backtrack": 30}, |
| mergelist = ["x11-proto/xextproto-7.2.1-r1", "x11-libs/libXaw-1.0.11-r2"], |
| success = True), |
| ) |
| |
| playground = ResolverPlayground(ebuilds=ebuilds, installed=installed, |
| user_config=user_config, world=world, debug=False) |
| |
| try: |
| for test_case in test_cases: |
| playground.run_TestCase(test_case) |
| self.assertEqual(test_case.test_success, True, test_case.fail_msg) |
| finally: |
| playground.cleanup() |