new apps/dashboard/wallet.html for stripe payment integration and user's consumables; nav added to _footer.html & also dynamic copyright year with django now Y template; new apps.dash.tests ITs & UTs reflect new wallet functionality in .urls & .views

This commit is contained in:
Disco DeDisco
2026-03-08 15:14:41 -04:00
parent 571f659b19
commit 076d75effe
17 changed files with 362 additions and 42 deletions

View File

@@ -3,39 +3,39 @@ from django.http import HttpRequest
from django.test import TestCase
from apps.lyric.authentication import PasswordlessAuthenticationBackend
from apps.lyric.models import Token, User
from apps.lyric.models import LoginToken, User
class AuthenticateTest(TestCase):
def test_returns_None_if_token_uuid_not_found(self):
def test_returns_None_if_login_token_uuid_not_found(self):
uid = uuid.uuid4()
result = PasswordlessAuthenticationBackend().authenticate(
HttpRequest(), uid
)
self.assertIsNone(result)
def test_returns_new_user_with_correct_email_if_token_exists(self):
def test_returns_new_user_with_correct_email_if_login_token_exists(self):
email = "discoman@example.com"
token = Token.objects.create(email=email)
login_token = LoginToken.objects.create(email=email)
user = PasswordlessAuthenticationBackend().authenticate(
HttpRequest(), token.uid
HttpRequest(), login_token.uid
)
new_user = User.objects.get(email=email)
self.assertEqual(user, new_user)
def test_returns_existing_user_with_correct_email_if_token_exists(self):
def test_returns_existing_user_with_correct_email_if_login_token_exists(self):
email = "discoman@example.com"
existing_user = User.objects.create(email=email)
token = Token.objects.create(email=email)
login_token = LoginToken.objects.create(email=email)
user = PasswordlessAuthenticationBackend().authenticate(
HttpRequest(), token.uid
HttpRequest(), login_token.uid
)
self.assertEqual(user, existing_user)
def test_can_retrieve_token_by_uuid(self):
token = Token.objects.create(email="a@b.cde")
fetched = Token.objects.get(pk=token.uid)
self.assertEqual(fetched, token)
def test_can_retrieve_login_token_by_uuid(self):
login_token = LoginToken.objects.create(email="a@b.cde")
fetched = LoginToken.objects.get(pk=login_token.uid)
self.assertEqual(fetched, login_token)
class GetUserTest(TestCase):
def test_gets_user_by_uuid(self):