provide author information for the feed and entries

Signed-off-by: Brian S. Stephan <bss@incorporeal.org>
This commit is contained in:
Brian S. Stephan 2023-12-30 15:25:46 -06:00
parent b26975421c
commit 575e2ad387
Signed by: bss
GPG Key ID: 3DE06D3180895FCB
3 changed files with 15 additions and 1 deletions

View File

@ -65,4 +65,7 @@ class Config(object):
TITLE_SUFFIX = DOMAIN_NAME
CONTACT_EMAIL = 'admin@example.com'
# feed settings
AUTHOR = {'name': 'Test Name', 'email': 'admin@example.com'}
# specify FAVICON in your instance config.py to override the provided icon

View File

@ -34,6 +34,7 @@ def serve_feed(feed_type):
fg = FeedGenerator()
fg.id(f'https://{app.config["DOMAIN_NAME"]}/')
fg.title(f'{app.config["TITLE_SUFFIX"]}')
fg.author(app.config["AUTHOR"])
fg.link(href=f'https://{app.config["DOMAIN_NAME"]}/feed/{feed_type}', rel='self')
fg.link(href=f'https://{app.config["DOMAIN_NAME"]}', rel='alternate')
fg.subtitle(f"Blog posts and other dated materials from {app.config['TITLE_SUFFIX']}")
@ -55,6 +56,7 @@ def serve_feed(feed_type):
fe = fg.add_entry()
fe.id(_generate_feed_id(feed_entry_path))
fe.title(page_name if page_name else page_title)
fe.author(app.config["AUTHOR"])
fe.link(href=link)
fe.content(content, type='html')

View File

@ -26,8 +26,17 @@ def test_rss_type_is_200(client):
print(response.text)
def test_feed_generator(app):
def test_feed_generator_atom(app):
"""Test the root feed generator."""
with app.test_request_context():
content = serve_feed('atom')
assert b'<id>https://example.com/</id>' in content
assert b'<email>admin@example.com</email>' in content
assert b'<name>Test Name</name>' in content
def test_feed_generator_rss(app):
"""Test the root feed generator."""
with app.test_request_context():
content = serve_feed('rss')
assert b'<author>admin@example.com (Test Name)</author>' in content