canaille-globuzma/tests/test_profile.py

86 lines
2.5 KiB
Python
Raw Normal View History

2020-10-20 09:44:45 +00:00
def test_profile(testclient, slapd_connection, logged_user):
2020-10-31 16:41:24 +00:00
res = testclient.get("/profile/user", status=200)
2020-10-20 09:44:45 +00:00
res.form["sub"] = "user"
res.form["given_name"] = "given_name"
res.form["family_name"] = "family_name"
res.form["email"] = "email@mydomain.tld"
res.form["phone_number"] = "555-666-777"
2020-10-30 22:41:02 +00:00
res = res.form.submit(status=200)
2020-10-20 09:44:45 +00:00
logged_user.reload(slapd_connection)
assert ["user"] == logged_user.uid
assert ["given_name"] == logged_user.givenName
assert ["family_name"] == logged_user.sn
assert ["email@mydomain.tld"] == logged_user.mail
assert ["555-666-777"] == logged_user.telephoneNumber
2020-10-21 07:52:02 +00:00
2020-10-21 08:26:31 +00:00
with testclient.app.app_context():
assert logged_user.check_password("correct horse battery staple")
2020-10-21 07:52:02 +00:00
def test_bad_email(testclient, slapd_connection, logged_user):
2020-10-31 16:41:24 +00:00
res = testclient.get("/profile/user", status=200)
2020-10-21 07:52:02 +00:00
res.form["email"] = "john@doe.com"
2020-10-30 22:41:02 +00:00
res = res.form.submit(status=200)
2020-10-21 07:52:02 +00:00
assert ["john@doe.com"] == logged_user.mail
2020-10-31 16:41:24 +00:00
res = testclient.get("/profile/user", status=200)
2020-10-21 07:52:02 +00:00
res.form["email"] = "yolo"
2020-10-30 22:41:02 +00:00
res = res.form.submit(status=200)
2020-10-21 07:52:02 +00:00
logged_user.reload(slapd_connection)
assert ["john@doe.com"] == logged_user.mail
2020-10-21 08:26:31 +00:00
def test_password_change(testclient, slapd_connection, logged_user):
2020-10-31 16:41:24 +00:00
res = testclient.get("/profile/user", status=200)
2020-10-21 08:26:31 +00:00
res.form["password1"] = "new_password"
res.form["password2"] = "new_password"
2020-10-30 22:41:02 +00:00
res = res.form.submit(status=200)
2020-10-21 08:26:31 +00:00
with testclient.app.app_context():
assert logged_user.check_password("new_password")
2020-10-31 16:41:24 +00:00
res = testclient.get("/profile/user", status=200)
2020-10-21 08:26:31 +00:00
res.form["password1"] = "correct horse battery staple"
res.form["password2"] = "correct horse battery staple"
2020-10-30 22:41:02 +00:00
res = res.form.submit(status=200)
2020-10-21 08:26:31 +00:00
with testclient.app.app_context():
assert logged_user.check_password("correct horse battery staple")
def test_password_change_fail(testclient, slapd_connection, logged_user):
2020-10-31 16:41:24 +00:00
res = testclient.get("/profile/user", status=200)
2020-10-21 08:26:31 +00:00
res.form["password1"] = "new_password"
res.form["password2"] = "other_password"
2020-10-30 22:41:02 +00:00
res = res.form.submit(status=200)
2020-10-21 08:26:31 +00:00
with testclient.app.app_context():
assert logged_user.check_password("correct horse battery staple")
2020-10-31 16:41:24 +00:00
res = testclient.get("/profile/user", status=200)
2020-10-21 08:26:31 +00:00
res.form["password1"] = "new_password"
res.form["password2"] = ""
2020-10-30 22:41:02 +00:00
res = res.form.submit(status=200)
2020-10-21 08:26:31 +00:00
with testclient.app.app_context():
assert logged_user.check_password("correct horse battery staple")