summaryrefslogtreecommitdiffstats
path: root/pym/portage/tests/resolver/test_multislot.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-10-06 08:32:54 -0700
committerZac Medico <zmedico@gentoo.org>2010-10-06 08:32:54 -0700
commit2848c1d5f2ec93aa7c2a3e893db112b4db6687c6 (patch)
treed3e11a48acfc51d758efb6e22afc9573738f9909 /pym/portage/tests/resolver/test_multislot.py
parentd05c9bcd73b5d00333e5f4368af389cee65fbf79 (diff)
downloadportage-2848c1d5f2ec93aa7c2a3e893db112b4db6687c6.tar.gz
portage-2848c1d5f2ec93aa7c2a3e893db112b4db6687c6.tar.bz2
portage-2848c1d5f2ec93aa7c2a3e893db112b4db6687c6.zip
Test that SLOT deps don't rebuild multislot.
Diffstat (limited to 'pym/portage/tests/resolver/test_multislot.py')
-rw-r--r--pym/portage/tests/resolver/test_multislot.py40
1 files changed, 40 insertions, 0 deletions
diff --git a/pym/portage/tests/resolver/test_multislot.py b/pym/portage/tests/resolver/test_multislot.py
new file mode 100644
index 000000000..8615419b5
--- /dev/null
+++ b/pym/portage/tests/resolver/test_multislot.py
@@ -0,0 +1,40 @@
+# Copyright 2010 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 MultSlotTestCase(TestCase):
+
+ def testMultiSlotSelective(self):
+ """
+ Test that a package isn't reinstalled due to SLOT dependency
+ interaction with USE=multislot (bug #220341).
+ """
+
+ ebuilds = {
+ "sys-devel/gcc-4.4.4": { "SLOT": "4.4" },
+ }
+
+ installed = {
+ "sys-devel/gcc-4.4.4": { "SLOT": "i686-pc-linux-gnu-4.4.4" },
+ }
+
+ options = {'--update' : True, '--deep' : True, '--selective' : True}
+
+ test_cases = (
+ ResolverPlaygroundTestCase(
+ ["sys-devel/gcc:4.4"],
+ options = options,
+ mergelist = [],
+ success = True),
+ )
+
+ playground = ResolverPlayground(ebuilds=ebuilds, installed=installed)
+
+ 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()