diff --git a/ietf/person/factories.py b/ietf/person/factories.py index 89b16e8b5..627c9ed6a 100644 --- a/ietf/person/factories.py +++ b/ietf/person/factories.py @@ -17,7 +17,7 @@ from django.utils.text import slugify import debug # pyflakes:ignore from ietf.person.models import Person, Alias, Email -from ietf.person.name import unidecode_name +from ietf.person.name import normalize_name, unidecode_name fake = faker.Factory.create() @@ -53,7 +53,7 @@ class PersonFactory(factory.DjangoModelFactory): model = Person user = factory.SubFactory(UserFactory) - name = factory.LazyAttribute(lambda p: u'%s %s'%(p.user.first_name,p.user.last_name)) + name = factory.LazyAttribute(lambda p: normalize_name(u'%s %s'%(p.user.first_name, p.user.last_name))) ascii = factory.LazyAttribute(lambda p: unicode(unidecode_name(p.name))) class Params: diff --git a/ietf/person/name.py b/ietf/person/name.py index c8e26df42..4c16256a5 100644 --- a/ietf/person/name.py +++ b/ietf/person/name.py @@ -119,6 +119,12 @@ def unidecode_name(uname): name = re.sub(' +', ' ', name) return name +def normalize_name(s): + # There is probably more to be done here, but we start by normalising + # spaces: + s = re.sub(' +', ' ', s) + return s + if __name__ == "__main__": import sys name = u" ".join(sys.argv[1:])