Fixed Param.validate() so that self.query is checked after self.required

This commit is contained in:
Jason Gerard DeRose 2009-01-20 09:38:39 -07:00
parent 55fba5420d
commit f22f3eabb2
2 changed files with 4 additions and 4 deletions

View File

@ -490,13 +490,12 @@ class Param(ReadOnly):
:param value: A proposed value for this parameter.
"""
# FIXME: this should be after 'if value is None:'
if self.query:
return
if value is None:
if self.required:
raise RequirementError(name=self.name)
return
if self.query:
return
if self.multivalue:
if type(value) is not tuple:
raise TypeError(

View File

@ -380,7 +380,8 @@ class test_Param(ClassChecker):
# Test with query=True:
o = self.cls('my_param', query=True)
assert o.query is True
assert o.validate(None) is None
e = raises(errors2.RequirementError, o.validate, None)
assert_equal(e.name, 'my_param')
# Test with multivalue=True:
o = self.cls('my_param', multivalue=True)