summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-09-13 12:37:28 -0700
committerZac Medico <zmedico@gentoo.org>2012-09-13 12:37:28 -0700
commit34fd6700ba3ff1e18865322b37be31851570ab83 (patch)
treec811afa17137d59feebe8b0467fb9e47d7ac013e
parent32dda00da1d9d33c345896119a7e01fc840df265 (diff)
downloadportage-34fd6700ba3ff1e18865322b37be31851570ab83.tar.gz
portage-34fd6700ba3ff1e18865322b37be31851570ab83.tar.bz2
portage-34fd6700ba3ff1e18865322b37be31851570ab83.zip
repoman: test package.use.stable.mask
-rw-r--r--pym/portage/tests/repoman/test_simple.py35
-rw-r--r--pym/portage/tests/resolver/ResolverPlayground.py12
2 files changed, 41 insertions, 6 deletions
diff --git a/pym/portage/tests/repoman/test_simple.py b/pym/portage/tests/repoman/test_simple.py
index eab06d9b8..639ec31ea 100644
--- a/pym/portage/tests/repoman/test_simple.py
+++ b/pym/portage/tests/repoman/test_simple.py
@@ -78,7 +78,22 @@ class SimpleRepomanTestCase(TestCase):
("x86", "default/linux/x86/test_profile", "stable"),
)
+ profile = {
+ "eapi": ("5_pre2",),
+ "package.use.stable.mask": ("dev-libs/A flag",)
+ }
+
ebuilds = {
+ "dev-libs/A-0": {
+ "COPYRIGHT_HEADER" : copyright_header,
+ "DESCRIPTION" : "Desc goes here",
+ "EAPI" : "5_pre2",
+ "HOMEPAGE" : "http://example.com",
+ "IUSE" : "flag",
+ "KEYWORDS": "x86",
+ "LICENSE": "GPL-2",
+ "RDEPEND": "flag? ( dev-libs/B[flag] )",
+ },
"dev-libs/A-1": {
"COPYRIGHT_HEADER" : copyright_header,
"DESCRIPTION" : "Desc goes here",
@@ -98,6 +113,17 @@ class SimpleRepomanTestCase(TestCase):
"KEYWORDS": "~x86",
"LICENSE": "GPL-2",
},
+ "dev-libs/C-0": {
+ "COPYRIGHT_HEADER" : copyright_header,
+ "DESCRIPTION" : "Desc goes here",
+ "EAPI" : "4",
+ "HOMEPAGE" : "http://example.com",
+ "IUSE" : "flag",
+ # must be unstable, since dev-libs/A[flag] is stable masked
+ "KEYWORDS": "~x86",
+ "LICENSE": "GPL-2",
+ "RDEPEND": "flag? ( dev-libs/A[flag] )",
+ },
}
licenses = ["GPL-2"]
arch_list = ["x86"]
@@ -117,6 +143,13 @@ class SimpleRepomanTestCase(TestCase):
"flags" : "<flag name='flag'>Description of how USE='flag' affects this package</flag>",
},
),
+ (
+ "dev-libs/C",
+ {
+ "herd" : "no-herd",
+ "flags" : "<flag name='flag'>Description of how USE='flag' affects this package</flag>",
+ },
+ ),
)
use_desc = (
@@ -124,7 +157,7 @@ class SimpleRepomanTestCase(TestCase):
)
playground = ResolverPlayground(ebuilds=ebuilds,
- repo_configs=repo_configs, debug=debug)
+ profile=profile, repo_configs=repo_configs, debug=debug)
settings = playground.settings
eprefix = settings["EPREFIX"]
eroot = settings["EROOT"]
diff --git a/pym/portage/tests/resolver/ResolverPlayground.py b/pym/portage/tests/resolver/ResolverPlayground.py
index 0ac209761..324ef9dd7 100644
--- a/pym/portage/tests/resolver/ResolverPlayground.py
+++ b/pym/portage/tests/resolver/ResolverPlayground.py
@@ -34,7 +34,8 @@ class ResolverPlayground(object):
its work.
"""
- config_files = frozenset(("package.accept_keywords", "package.use", "package.mask", "package.keywords", \
+ config_files = frozenset(("eapi", "package.accept_keywords", "package.use",
+ "package.use.stable.mask", "package.mask", "package.keywords",
"package.unmask", "package.properties", "package.license", "use.mask", "use.force",
"layout.conf",))
@@ -344,10 +345,11 @@ class ResolverPlayground(object):
sub_profile_dir = os.path.join(profile_dir, "default", "linux", "x86", "test_profile")
os.makedirs(sub_profile_dir)
- eapi_file = os.path.join(sub_profile_dir, "eapi")
- f = open(eapi_file, "w")
- f.write("0\n")
- f.close()
+ if not (profile and "eapi" in profile):
+ eapi_file = os.path.join(sub_profile_dir, "eapi")
+ f = open(eapi_file, "w")
+ f.write("0\n")
+ f.close()
make_defaults_file = os.path.join(sub_profile_dir, "make.defaults")
f = open(make_defaults_file, "w")