143: Added errors.RequirementError exception; cmd.validate() now raises RequirementError if a required option is missing

This commit is contained in:
Jason Gerard DeRose
2008-08-13 05:14:12 +00:00
parent 47fed6c4c2
commit b4ad681f41
3 changed files with 43 additions and 16 deletions

View File

@@ -199,9 +199,13 @@ class cmd(plugable.Plugin):
def validate(self, **kw):
self.print_call('validate', kw, 1)
for (key, value) in kw.items():
if key in self.options:
self.options[key].validate(value)
for opt in self.options:
value = kw.get(opt.name, None)
if value is None:
if opt.required:
raise errors.RequirementError(opt.name)
continue
opt.validate(value)
def execute(self, **kw):
self.print_call('execute', kw, 1)