Test for restore password by email in different case

This commit is contained in:
Poderyagin Egor 2015-12-13 22:03:38 +03:00
parent 56773d8618
commit af8424f0a1
3 changed files with 12 additions and 3 deletions

View File

@ -50,11 +50,11 @@ class LoginSerializer(serializers.Serializer):
msg = _('Must include either "username" or "email" and "password".')
raise exceptions.ValidationError(msg)
elif username and password:
elif username or email and password:
user = authenticate(username=username, password=password)
else:
msg = _('Must include "username" and "password".')
msg = _('Must include either "username" or "email" and "password".')
raise exceptions.ValidationError(msg)
# Did we get back an active user?

View File

@ -72,5 +72,5 @@ ACCOUNT_ACTIVATION_DAYS = 1
SITE_ID = 1
MIGRATION_MODULES = {
'authtoken': 'authtoken.migrations',
'authtoken': 'rest_auth.migrations',
}

View File

@ -224,6 +224,15 @@ class APITestCase1(TestCase, BaseAPITestCase):
}
self.post(self.login_url, data=payload, status_code=200)
def test_password_reset_with_email_in_different_cases(self):
user = get_user_model().objects.create_user(self.USERNAME, self.EMAIL.lower(), self.PASS)
# call password reset with email in Upper case
mail_count = len(mail.outbox)
payload = {'email': self.EMAIL.upper()}
self.post(self.password_reset_url, data=payload, status_code=200)
self.assertEqual(len(mail.outbox), mail_count + 1)
def test_password_reset_with_invalid_email(self):
get_user_model().objects.create_user(self.USERNAME, self.EMAIL, self.PASS)