canaille-globuzma/tests/core/test_models.py

38 lines
1.1 KiB
Python
Raw Permalink Normal View History

from canaille.app import models
2023-06-28 16:09:25 +00:00
2023-05-18 14:43:23 +00:00
def test_user_get_user_from_login(testclient, user, backend):
assert backend.get_user_from_login(login="invalid") is None
assert backend.get_user_from_login(login="user") == user
2023-05-18 14:43:23 +00:00
def test_user_has_password(testclient, backend):
user = models.User(
2023-05-18 14:43:23 +00:00
formatted_name="Temp User",
family_name="Temp",
user_name="temp",
emails=["john@doe.test"],
2023-05-18 14:43:23 +00:00
)
backend.save(user)
2023-05-18 14:43:23 +00:00
assert user.password is None
assert not user.has_password()
2023-05-18 14:43:23 +00:00
user.password = "foobar"
backend.save(user)
2023-05-18 14:43:23 +00:00
assert user.password is not None
assert user.has_password()
2023-05-18 14:43:23 +00:00
backend.delete(user)
2023-05-18 14:43:23 +00:00
def test_user_set_and_check_password(testclient, user, backend):
assert not backend.check_user_password(user, "something else")[0]
assert backend.check_user_password(user, "correct horse battery staple")[0]
2023-05-18 14:43:23 +00:00
backend.set_user_password(user, "something else")
2023-05-18 14:43:23 +00:00
assert backend.check_user_password(user, "something else")[0]
assert not backend.check_user_password(user, "correct horse battery staple")[0]