diff --git a/backend/app/services/feed_generator.py b/backend/app/services/feed_generator.py index 7d8d21d..d740a9e 100644 --- a/backend/app/services/feed_generator.py +++ b/backend/app/services/feed_generator.py @@ -17,11 +17,13 @@ def generate_feed(db: Session, newsletter_id: str): feed_url = f"{settings.app_base_url}/feeds/{newsletter_id}" logo_url = f"{settings.app_base_url}/logo.png" + icon_url = f"{settings.app_base_url}/favicon.ico" fg = FeedGenerator() fg.id(f"urn:letterfeed:newsletter:{newsletter.id}") fg.title(newsletter.name) fg.logo(logo_url) + fg.icon(icon_url) fg.link(href=feed_url, rel="self") sender_emails = ", ".join([s.email for s in newsletter.senders]) fg.description(f"A feed of newsletters from {sender_emails}") diff --git a/backend/app/tests/test_routers.py b/backend/app/tests/test_routers.py index 2a3dcc1..5ae8b7a 100644 --- a/backend/app/tests/test_routers.py +++ b/backend/app/tests/test_routers.py @@ -185,6 +185,9 @@ def test_get_newsletter_feed(client: TestClient): logo = root.find("atom:logo", ns) assert logo is not None assert logo.text == "http://localhost:8000/logo.png" + icon = root.find("atom:icon", ns) + assert icon is not None + assert icon.text == "http://localhost:8000/favicon.ico" entry_titles = [ entry.find("atom:title", ns).text for entry in root.findall("atom:entry", ns) ] diff --git a/backend/app/tests/test_services.py b/backend/app/tests/test_services.py index 0e7dd36..a0c47bf 100644 --- a/backend/app/tests/test_services.py +++ b/backend/app/tests/test_services.py @@ -41,6 +41,7 @@ def test_generate_feed(db_session: Session): assert f"