diff options
author | Jason Gerard DeRose <jderose@redhat.com> | 2008-09-04 02:02:06 +0000 |
---|---|---|
committer | Jason Gerard DeRose <jderose@redhat.com> | 2008-09-04 02:02:06 +0000 |
commit | 5cdb182ae8e87f4d3e84bbf7875357c101ca605e (patch) | |
tree | b5c9b23c8738faec92dba4759bf24ffa05514a73 /ipalib/public.py | |
parent | 7e3664a964e6c0ef0c773ae8eb3ab3ac21385649 (diff) | |
download | freeipa.git-5cdb182ae8e87f4d3e84bbf7875357c101ca605e.tar.gz freeipa.git-5cdb182ae8e87f4d3e84bbf7875357c101ca605e.tar.xz freeipa.git-5cdb182ae8e87f4d3e84bbf7875357c101ca605e.zip |
251: Fixed Command.validate() so it raises RequirementError; updated and re-enabled unit tests for Command.validate()
Diffstat (limited to 'ipalib/public.py')
-rw-r--r-- | ipalib/public.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/ipalib/public.py b/ipalib/public.py index 91f357ca..c64e29d5 100644 --- a/ipalib/public.py +++ b/ipalib/public.py @@ -222,9 +222,12 @@ class Command(plugable.Plugin): def validate(self, **kw): self.print_call('validate', kw, 1) - for (key, value) in kw.iteritems(): - if key in self.Option: - self.Option[key].validate(value) + for option in self.Option(): + value = kw.get(option.name, None) + if value is not None: + option.validate(value) + elif option.required: + raise errors.RequirementError(option.name) def execute(self, **kw): self.print_call('execute', kw, 1) |