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 import pytest
from django.conf import settings from django.conf import settings
from django.contrib.sites.models import Site
from django.core.files.uploadedfile import SimpleUploadedFile from django.core.files.uploadedfile import SimpleUploadedFile
from django.test import TestCase from django.test import TestCase
from django.urls import reverse from django.urls import reverse
@ -24,7 +25,7 @@ from django.utils import html
from django.utils.timezone import localtime, now from django.utils.timezone import localtime, now
from django.utils.translation import gettext as _ from django.utils.translation import gettext as _
from model_bakery import baker 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 club.models import Club, Membership
from com.models import News, NewsDate, Poster, Sith, Weekmail, WeekmailArticle from com.models import News, NewsDate, Poster, Sith, Weekmail, WeekmailArticle
@ -324,6 +325,10 @@ class TestNewsCreation(TestCase):
@pytest.mark.django_db @pytest.mark.django_db
def test_feed(client): def test_feed(client):
"""Smoke test that checks that the atom feed is working""" """Smoke test that checks that the atom feed is working"""
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")) resp = client.get(reverse("com:news_feed"))
assert resp.status_code == 200 assert resp.status_code == 200
assert resp.headers["Content-Type"] == "application/rss+xml; charset=utf-8" assert resp.headers["Content-Type"] == "application/rss+xml; charset=utf-8"

View File

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

View File

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