summaryrefslogtreecommitdiff
path: root/blog
diff options
context:
space:
mode:
authorSarah Boyce <42296566+sarahboyce@users.noreply.github.com>2025-12-20 16:13:41 +0100
committerSaptak Sengupta <saptak013@gmail.com>2025-12-22 22:47:52 +0530
commit38220f29619ebe8a706141eb792ad09d6d7a6579 (patch)
treecabee780675adaa7c9b515e61af1150616cbb6f4 /blog
parente564cd36b3b7865283cdbdd807136886615b602c (diff)
Added diamond and platinum corporate members to blog pages.
Diffstat (limited to 'blog')
-rw-r--r--blog/tests.py80
1 files changed, 80 insertions, 0 deletions
diff --git a/blog/tests.py b/blog/tests.py
index 3ad39318..d31ef6fa 100644
--- a/blog/tests.py
+++ b/blog/tests.py
@@ -14,6 +14,14 @@ from django.urls import reverse
from django.utils import timezone, translation
from djangoproject.tests import ReleaseMixin
+from members.models import (
+ BRONZE_MEMBERSHIP,
+ DIAMOND_MEMBERSHIP,
+ GOLD_MEMBERSHIP,
+ PLATINUM_MEMBERSHIP,
+ SILVER_MEMBERSHIP,
+ CorporateMember,
+)
from .models import ContentFormat, Entry, Event, ImageUpload
from .sitemaps import WeblogSitemap
@@ -381,6 +389,78 @@ class ViewsTestCase(ReleaseMixin, DateTimeMixin, TestCase):
self.assertEqual(response.status_code, 200)
self.assertQuerySetEqual(response.context["events"], [])
+ def test_corporate_sponsors_displayed(self):
+ objs = CorporateMember.objects.bulk_create(
+ [
+ CorporateMember(
+ display_name="Platinum company",
+ membership_level=PLATINUM_MEMBERSHIP,
+ ),
+ CorporateMember(
+ display_name="Diamond company", membership_level=DIAMOND_MEMBERSHIP
+ ),
+ CorporateMember(
+ display_name="Gold company", membership_level=GOLD_MEMBERSHIP
+ ),
+ CorporateMember(
+ display_name="Silver company", membership_level=SILVER_MEMBERSHIP
+ ),
+ CorporateMember(
+ display_name="Bronze company", membership_level=BRONZE_MEMBERSHIP
+ ),
+ ]
+ )
+ for obj in objs:
+ obj.invoice_set.create(amount=4, expiration_date=date(3000, 1, 1))
+
+ blog_entry = Entry.objects.create(
+ pub_date=date(2005, 7, 21),
+ is_active=True,
+ headline="Django election results",
+ slug="a",
+ author="DSF Board",
+ )
+ urls = [
+ reverse("weblog:index"),
+ reverse(
+ "weblog:entry",
+ kwargs={
+ "year": blog_entry.pub_date.year,
+ "month": blog_entry.pub_date.strftime("%b").lower(),
+ "day": blog_entry.pub_date.day,
+ "slug": blog_entry.slug,
+ },
+ ),
+ reverse(
+ "weblog:archive-year",
+ kwargs={"year": blog_entry.pub_date.year},
+ ),
+ reverse(
+ "weblog:archive-month",
+ kwargs={
+ "year": blog_entry.pub_date.year,
+ "month": blog_entry.pub_date.strftime("%b").lower(),
+ },
+ ),
+ reverse(
+ "weblog:archive-day",
+ kwargs={
+ "year": blog_entry.pub_date.year,
+ "month": blog_entry.pub_date.strftime("%b").lower(),
+ "day": blog_entry.pub_date.day,
+ },
+ ),
+ ]
+ for url in urls:
+ with self.subTest(url=url):
+ response = self.client.get(url)
+ self.assertContains(response, "Diamond and Platinum Members")
+ self.assertContains(response, "Platinum company")
+ self.assertContains(response, "Diamond company")
+ self.assertNotContains(response, "Gold company")
+ self.assertNotContains(response, "Silver company")
+ self.assertNotContains(response, "Bronze company")
+
def test_anonymous_user_cannot_see_unpublished_entries(self):
"""
Anonymous users can't see unpublished entries at all (list or detail view)