didn't actually add any new files connected to lyric.templatetags
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
Disco DeDisco
2026-03-03 19:07:45 -05:00
parent 1c894f8ae6
commit 649bd39df9
3 changed files with 62 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
from django.test import SimpleTestCase
from unittest.mock import Mock
from apps.lyric.templatetags.lyric_extras import display_name, truncate_email
class TruncateEmailTest(SimpleTestCase):
def test_truncates_neither_short_local_nor_short_domain(self):
self.assertEqual(truncate_email("abc@d.e"), "abc@d.e")
def test_truncates_only_long_local_not_short_domain(self):
self.assertEqual(truncate_email("sesquipedalian@abc.de"), "se…an@abc.de")
def test_truncates_not_short_local_only_long_domain(self):
self.assertEqual(truncate_email("abc@longexample.com"), "abc@l…e.com")
def test_truncates_both_long_local_and_long_domain(self):
self.assertEqual(truncate_email("onomatopoeia@earthmanrpg.com"), "on…ia@e…g.com")
def test_boundary_case_longish_segments_no_truncate(self):
self.assertEqual(truncate_email("abcdefg@gmail.com"), "abcdefg@gmail.com")
def test_boundary_case_exact_segments_do_truncate(self):
self.assertEqual(truncate_email("abcdefgh@icloud.com"), "ab…gh@i…d.com")
class DisplayNameFilterTest(SimpleTestCase):
def test_returns_empty_string_for_none_user(self):
self.assertEqual(display_name(None), "")
def test_returns_truncated_email_when_no_username(self):
user = Mock(username="", email="sesquipedalian@abc.de")
self.assertEqual(display_name(user), "se…an@abc.de")
def test_returns_username_when_set(self):
user = Mock(username="earthman", email="sesquipedalian@abc.de")
self.assertEqual(display_name(user), "earthman")