diff options
author | Sebastian Luther <SebastianLuther@gmx.de> | 2010-07-23 21:12:07 +0200 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-07-23 12:18:03 -0700 |
commit | f20465a6a8a1ce9a715d861013038238149fe533 (patch) | |
tree | 73de6263da493b10de79ebace60384c1fc91ec30 | |
parent | portage.dep.isvalidatom(): Add support for atoms with wildcards (diff) | |
download | portage-multirepo-f20465a6a8a1ce9a715d861013038238149fe533.tar.gz portage-multirepo-f20465a6a8a1ce9a715d861013038238149fe533.tar.bz2 portage-multirepo-f20465a6a8a1ce9a715d861013038238149fe533.zip |
portage.dep._use_dep: better validation, enable all tests
-rw-r--r-- | pym/portage/dep/__init__.py | 9 | ||||
-rw-r--r-- | pym/portage/tests/dep/testAtom.py | 4 |
2 files changed, 11 insertions, 2 deletions
diff --git a/pym/portage/dep/__init__.py b/pym/portage/dep/__init__.py index c58a83e4..e6f2362b 100644 --- a/pym/portage/dep/__init__.py +++ b/pym/portage/dep/__init__.py @@ -399,6 +399,8 @@ class _use_dep(object): if "!" == first_char: conditional.disabled.append( self._validate_flag(x, x[1:-1])) + elif first_char in ("-", "=", "?"): + raise InvalidAtom(_("Invalid use dep: '%s'") % (x,)) else: conditional.enabled.append( self._validate_flag(x, x[:-1])) @@ -407,13 +409,20 @@ class _use_dep(object): if "!" == first_char: conditional.not_equal.append( self._validate_flag(x, x[1:-1])) + elif first_char in ("-", "=", "?"): + raise InvalidAtom(_("Invalid use dep: '%s'") % (x,)) else: conditional.equal.append( self._validate_flag(x, x[:-1])) + elif last_char in ("!", "-"): + raise InvalidAtom(_("Invalid use dep: '%s'") % (x,)) + else: if "-" == first_char: disabled_flags.append(self._validate_flag(x, x[1:])) + elif first_char in ("!", "=", "?"): + raise InvalidAtom(_("Invalid use dep: '%s'") % (x,)) else: enabled_flags.append(self._validate_flag(x, x)) diff --git a/pym/portage/tests/dep/testAtom.py b/pym/portage/tests/dep/testAtom.py index 7457babb..091cef3a 100644 --- a/pym/portage/tests/dep/testAtom.py +++ b/pym/portage/tests/dep/testAtom.py @@ -32,14 +32,14 @@ class TestAtom(TestCase): tests_xfail = [ ( "cat/pkg[a!]", False ), - #( "cat/pkg[a-]", False ), + ( "cat/pkg[a-]", False ), ( "cat/pkg[!a]", False ), ( "cat/pkg[!a!]", False ), ( "cat/pkg[!a-]", False ), ( "cat/pkg[-a=]", False ), ( "cat/pkg[-a?]", False ), ( "cat/pkg[-a!]", False ), - #( "cat/pkg[-a-]", False ), + ( "cat/pkg[-a-]", False ), ( "cat/pkg[=a]", False ), ( "cat/pkg[=a=]", False ), ( "cat/pkg[=a?]", False ), |