Address review comments

This commit is contained in:
Antoine Bartuccio 2025-01-21 00:08:52 +01:00
parent dd2cd0a18d
commit 5db9819560
3 changed files with 12 additions and 7 deletions

View File

@ -17,6 +17,7 @@ from unittest.mock import patch
import pytest
from django.conf import settings
from django.contrib.sites.models import Site
from django.core.files.uploadedfile import SimpleUploadedFile
from django.test import TestCase
from django.urls import reverse
@ -24,7 +25,7 @@ from django.utils import html
from django.utils.timezone import localtime, now
from django.utils.translation import gettext as _
from model_bakery import baker
from pytest_django.asserts import assertRedirects
from pytest_django.asserts import assertNumQueries, assertRedirects
from club.models import Club, Membership
from com.models import News, NewsDate, Poster, Sith, Weekmail, WeekmailArticle
@ -324,6 +325,10 @@ class TestNewsCreation(TestCase):
@pytest.mark.django_db
def test_feed(client):
"""Smoke test that checks that the atom feed is working"""
resp = client.get(reverse("com:news_feed"))
assert resp.status_code == 200
assert resp.headers["Content-Type"] == "application/rss+xml; charset=utf-8"
Site.objects.clear_cache()
with assertNumQueries(2):
# get sith domain with Site api: 1 request
# get all news and related info: 1 request
resp = client.get(reverse("com:news_feed"))
assert resp.status_code == 200
assert resp.headers["Content-Type"] == "application/rss+xml; charset=utf-8"

View File

@ -281,7 +281,7 @@ class NewsFeed(Feed):
news__is_moderated=True,
end_date__gte=timezone.now() - (relativedelta(months=6)),
)
.prefetch_related("news")
.select_related("news", "news__author")
.order_by("-start_date")
)

View File

@ -27,7 +27,7 @@ from typing import ClassVar, NamedTuple
from django.conf import settings
from django.contrib.auth.models import Permission
from django.contrib.sites.shortcuts import get_current_site
from django.contrib.sites.models import Site
from django.core.management import call_command
from django.core.management.base import BaseCommand
from django.db import connection
@ -93,7 +93,7 @@ class Command(BaseCommand):
Sith.objects.create(weekmail_destinations="etudiants@git.an personnel@git.an")
site = get_current_site(None)
site = Site.objects.get_current()
site.domain = settings.SITH_URL
site.name = settings.SITH_NAME
site.save()