functional auth backend; new get_user() method in authentication model & new accompanying test methods
This commit is contained in:
@@ -14,3 +14,10 @@ class PasswordlessAuthenticationBackend:
|
|||||||
return User.objects.get(email=token.email)
|
return User.objects.get(email=token.email)
|
||||||
except User.DoesNotExist:
|
except User.DoesNotExist:
|
||||||
return User.objects.create(email=token.email)
|
return User.objects.create(email=token.email)
|
||||||
|
|
||||||
|
def get_user(self, email):
|
||||||
|
try:
|
||||||
|
return User.objects.get(email=email)
|
||||||
|
except User.DoesNotExist:
|
||||||
|
return None # might also just pass (which = return None)
|
||||||
|
|
||||||
@@ -42,3 +42,15 @@ class AuthenticateTest(TestCase):
|
|||||||
token = Token.objects.create(email="a@b.cde")
|
token = Token.objects.create(email="a@b.cde")
|
||||||
fetched = Token.objects.get(pk=token.uid)
|
fetched = Token.objects.get(pk=token.uid)
|
||||||
self.assertEqual(fetched, token)
|
self.assertEqual(fetched, token)
|
||||||
|
|
||||||
|
class GetUserTest(TestCase):
|
||||||
|
def test_gets_user_by_uuid(self):
|
||||||
|
User.objects.create(email="fantaman@example.com")
|
||||||
|
desired_user = User.objects.create(email="discoman@example.com")
|
||||||
|
found_user = PasswordlessAuthenticationBackend().get_user("discoman@example.com")
|
||||||
|
self.assertEqual(found_user, desired_user)
|
||||||
|
|
||||||
|
def test_returns_None_if_no_user_with_that_email(self):
|
||||||
|
self.assertIsNone(
|
||||||
|
PasswordlessAuthenticationBackend().get_user("discoman@example.com")
|
||||||
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user