Shorten superfluous names
This commit is contained in:
parent
6a9d405aea
commit
92849d8396
|
@ -13,7 +13,7 @@ from amanuensis.errors import ArgumentError
|
||||||
RE_ALPHANUM_DASH_UNDER = re.compile(r'^[A-Za-z0-9-_]*$')
|
RE_ALPHANUM_DASH_UNDER = re.compile(r'^[A-Za-z0-9-_]*$')
|
||||||
|
|
||||||
|
|
||||||
def create_lexicon(
|
def create(
|
||||||
db: DbContext,
|
db: DbContext,
|
||||||
name: str,
|
name: str,
|
||||||
title: str,
|
title: str,
|
||||||
|
|
|
@ -15,7 +15,7 @@ RE_NO_LETTERS = re.compile(r'^[0-9-_]*$')
|
||||||
RE_ALPHANUM_DASH_UNDER = re.compile(r'^[A-Za-z0-9-_]*$')
|
RE_ALPHANUM_DASH_UNDER = re.compile(r'^[A-Za-z0-9-_]*$')
|
||||||
|
|
||||||
|
|
||||||
def create_user(
|
def create(
|
||||||
db: DbContext,
|
db: DbContext,
|
||||||
username: str,
|
username: str,
|
||||||
password: str,
|
password: str,
|
||||||
|
|
|
@ -18,21 +18,21 @@ def test_create_lexicon(db):
|
||||||
}
|
}
|
||||||
# Test name constraints
|
# Test name constraints
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
lexiq.create_lexicon(db, **{**kwargs, 'name': None})
|
lexiq.create(db, **{**kwargs, 'name': None})
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
lexiq.create_lexicon(db, **{**kwargs, 'name': ''})
|
lexiq.create(db, **{**kwargs, 'name': ''})
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
lexiq.create_lexicon(db, **{**kwargs, 'name': ' '})
|
lexiq.create(db, **{**kwargs, 'name': ' '})
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
lexiq.create_lexicon(db, **{**kwargs, 'name': '..'})
|
lexiq.create(db, **{**kwargs, 'name': '..'})
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
lexiq.create_lexicon(db, **{**kwargs, 'name': '\x00'})
|
lexiq.create(db, **{**kwargs, 'name': '\x00'})
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
lexiq.create_lexicon(db, **{**kwargs, 'name': 'space in name'})
|
lexiq.create(db, **{**kwargs, 'name': 'space in name'})
|
||||||
|
|
||||||
# Validate that creation populates fields, including timestamps
|
# Validate that creation populates fields, including timestamps
|
||||||
before = datetime.datetime.utcnow() - datetime.timedelta(seconds=1)
|
before = datetime.datetime.utcnow() - datetime.timedelta(seconds=1)
|
||||||
new_lexicon = lexiq.create_lexicon(db, **kwargs)
|
new_lexicon = lexiq.create(db, **kwargs)
|
||||||
after = datetime.datetime.utcnow() + datetime.timedelta(seconds=1)
|
after = datetime.datetime.utcnow() + datetime.timedelta(seconds=1)
|
||||||
assert new_lexicon
|
assert new_lexicon
|
||||||
assert new_lexicon.id is not None
|
assert new_lexicon.id is not None
|
||||||
|
@ -42,4 +42,4 @@ def test_create_lexicon(db):
|
||||||
|
|
||||||
# No duplicate lexicon names
|
# No duplicate lexicon names
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
duplicate = lexiq.create_lexicon(db, **kwargs)
|
duplicate = lexiq.create(db, **kwargs)
|
||||||
|
|
|
@ -27,27 +27,27 @@ def test_create_user(db):
|
||||||
|
|
||||||
# Test length constraints
|
# Test length constraints
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
userq.create_user(db, **{**kwargs, 'username': 'me'})
|
userq.create(db, **{**kwargs, 'username': 'me'})
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
userq.create_user(db, **{**kwargs, 'username': 'the right honorable user-name, esquire'})
|
userq.create(db, **{**kwargs, 'username': 'the right honorable user-name, esquire'})
|
||||||
# Test allowed characters
|
# Test allowed characters
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
userq.create_user(db, **{**kwargs, 'username': 'user name'})
|
userq.create(db, **{**kwargs, 'username': 'user name'})
|
||||||
# No password
|
# No password
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
userq.create_user(db, **{**kwargs, 'password': None})
|
userq.create(db, **{**kwargs, 'password': None})
|
||||||
|
|
||||||
# Valid creation works and populates fields
|
# Valid creation works and populates fields
|
||||||
new_user = userq.create_user(db, **kwargs)
|
new_user = userq.create(db, **kwargs)
|
||||||
assert new_user
|
assert new_user
|
||||||
assert new_user.id is not None
|
assert new_user.id is not None
|
||||||
assert new_user.created is not None
|
assert new_user.created is not None
|
||||||
|
|
||||||
# No duplicate usernames
|
# No duplicate usernames
|
||||||
with pytest.raises(ArgumentError):
|
with pytest.raises(ArgumentError):
|
||||||
duplicate = userq.create_user(db, **kwargs)
|
duplicate = userq.create(db, **kwargs)
|
||||||
|
|
||||||
# Missing display name populates with username
|
# Missing display name populates with username
|
||||||
user2_kw = {**kwargs, 'username': 'user2', 'display_name': None}
|
user2_kw = {**kwargs, 'username': 'user2', 'display_name': None}
|
||||||
user2 = userq.create_user(db, **user2_kw)
|
user2 = userq.create(db, **user2_kw)
|
||||||
assert user2.display_name is not None
|
assert user2.display_name is not None
|
||||||
|
|
Loading…
Reference in New Issue