auth: Include user-input email in some error messages in the login form.

Fixes #13126.
This commit is contained in:
Mateusz Mandera
2021-08-23 15:14:05 +02:00
committed by Tim Abbott
parent fb3864ea3c
commit c5806d9728
7 changed files with 63 additions and 23 deletions

View File

@@ -168,7 +168,10 @@ class AuthBackendTest(ZulipTestCase):
if isinstance(backend, SocialAuthMixin):
# Returns a redirect to login page with an error.
self.assertEqual(result.status_code, 302)
self.assertEqual(result.url, user_profile.realm.uri + "/login/?is_deactivated=true")
self.assertEqual(
result.url,
f"{user_profile.realm.uri}/login/?is_deactivated={user_profile.delivery_email}",
)
else:
# Just takes you back to the login page treating as
# invalid auth; this is correct because the form will
@@ -1098,7 +1101,10 @@ class SocialAuthBase(DesktopFlowTestingLib, ZulipTestCase):
account_data_dict, expect_choose_email_screen=True, subdomain="zulip"
)
self.assertEqual(result.status_code, 302)
self.assertEqual(result.url, user_profile.realm.uri + "/login/?is_deactivated=true")
self.assertEqual(
result.url,
f"{user_profile.realm.uri}/login/?is_deactivated={user_profile.delivery_email}",
)
self.assertEqual(
m.output,
[
@@ -1107,7 +1113,11 @@ class SocialAuthBase(DesktopFlowTestingLib, ZulipTestCase):
)
],
)
# TODO: verify whether we provide a clear error message
result = self.client_get(result.url)
self.assert_in_success_response(
[f"Your account {user_profile.delivery_email} is no longer active."], result
)
def test_social_auth_invalid_realm(self) -> None:
account_data_dict = self.get_account_data_dict(email=self.email, name=self.name)