From 085027b00a48a709bef8e50ffea8d8aa90837d2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sascha=20I=C3=9Fbr=C3=BCcker?= Date: Sat, 16 Jan 2021 00:57:57 +0100 Subject: [PATCH] Show URL as fallback if no title is available (#64) --- bookmarks/models.py | 7 ++++++- bookmarks/tests/test_bookmarks_model.py | 16 ++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 bookmarks/tests/test_bookmarks_model.py diff --git a/bookmarks/models.py b/bookmarks/models.py index 613f139..ef8d605 100644 --- a/bookmarks/models.py +++ b/bookmarks/models.py @@ -51,7 +51,12 @@ class Bookmark(models.Model): @property def resolved_title(self): - return self.website_title if not self.title else self.title + if self.title: + return self.title + elif self.website_title: + return self.website_title + else: + return self.url @property def resolved_description(self): diff --git a/bookmarks/tests/test_bookmarks_model.py b/bookmarks/tests/test_bookmarks_model.py new file mode 100644 index 0000000..0ca9775 --- /dev/null +++ b/bookmarks/tests/test_bookmarks_model.py @@ -0,0 +1,16 @@ +from django.test import TestCase + +from bookmarks.models import Bookmark + + +class BookmarkTestCase(TestCase): + + def test_bookmark_resolved_title(self): + bookmark = Bookmark(title='Custom title', website_title='Website title', url='https://example.com') + self.assertEqual(bookmark.resolved_title, 'Custom title') + + bookmark = Bookmark(title='', website_title='Website title', url='https://example.com') + self.assertEqual(bookmark.resolved_title, 'Website title') + + bookmark = Bookmark(title='', website_title='', url='https://example.com') + self.assertEqual(bookmark.resolved_title, 'https://example.com')