342: Added unit test that TypeError is raised when Param() is created with extra kw args

This commit is contained in:
Jason Gerard DeRose 2008-09-24 18:33:25 +00:00
parent 06d7fb42ec
commit 97f0310a4c
2 changed files with 6 additions and 1 deletions

View File

@ -134,8 +134,9 @@ class Param(plugable.ReadOnly):
kw.update(kw_from_spec)
default = dict(self.__default)
if not set(default).issuperset(kw):
extra = sorted(set(kw) - set(default))
raise TypeError(
'no such kwargs: %r' % list(set(kw) - set(default))
'Param.__init__() takes no such kwargs: %s' % ', '.join(extra)
)
default.update(kw)
self.__kw = default

View File

@ -169,6 +169,10 @@ class test_Param(ClassChecker):
assert o.required is True
assert o.multivalue is True
e = raises(TypeError, self.cls, name, whatever=True, another=False)
assert str(e) == \
'Param.__init__() takes no such kwargs: another, whatever'
def test_convert(self):
"""
Test the `frontend.Param.convert` method.