228: plugable.check_name() now uses errors.check_type()

This commit is contained in:
Jason Gerard DeRose
2008-09-02 17:29:01 +00:00
parent 6697b955ee
commit 8b7fe7139d
2 changed files with 4 additions and 1 deletions

View File

@@ -28,6 +28,7 @@ http://docs.python.org/ref/sequence-types.html
import re
import inspect
import errors
from errors import check_type, check_isinstance
class ReadOnly(object):
@@ -466,7 +467,7 @@ def check_name(name):
:param name: Identifier to test.
"""
assert type(name) is str, 'must be %r' % str
check_type(name, str, 'name')
regex = r'^[a-z][_a-z0-9]*[a-z0-9]$'
if re.match(regex, name) is None:
raise errors.NameSpaceError(name, regex)

View File

@@ -549,6 +549,8 @@ def test_check_name():
]
for name in okay:
assert name is f(name)
e = raises(TypeError, f, unicode(name))
assert str(e) == errors.TYPE_FORMAT % ('name', str, unicode(name))
for name in nope:
raises(errors.NameSpaceError, f, name)
for name in okay: