|
14 | 14 | from django.utils import timezone, translation |
15 | 15 |
|
16 | 16 | from djangoproject.tests import ReleaseMixin |
| 17 | +from members.models import ( |
| 18 | + BRONZE_MEMBERSHIP, |
| 19 | + DIAMOND_MEMBERSHIP, |
| 20 | + GOLD_MEMBERSHIP, |
| 21 | + PLATINUM_MEMBERSHIP, |
| 22 | + SILVER_MEMBERSHIP, |
| 23 | + CorporateMember, |
| 24 | +) |
17 | 25 |
|
18 | 26 | from .models import ContentFormat, Entry, Event, ImageUpload |
19 | 27 | from .sitemaps import WeblogSitemap |
@@ -381,6 +389,78 @@ def test_no_unpublished_future_events(self): |
381 | 389 | self.assertEqual(response.status_code, 200) |
382 | 390 | self.assertQuerySetEqual(response.context["events"], []) |
383 | 391 |
|
| 392 | + def test_corporate_sponsors_displayed(self): |
| 393 | + objs = CorporateMember.objects.bulk_create( |
| 394 | + [ |
| 395 | + CorporateMember( |
| 396 | + display_name="Platinum company", |
| 397 | + membership_level=PLATINUM_MEMBERSHIP, |
| 398 | + ), |
| 399 | + CorporateMember( |
| 400 | + display_name="Diamond company", membership_level=DIAMOND_MEMBERSHIP |
| 401 | + ), |
| 402 | + CorporateMember( |
| 403 | + display_name="Gold company", membership_level=GOLD_MEMBERSHIP |
| 404 | + ), |
| 405 | + CorporateMember( |
| 406 | + display_name="Silver company", membership_level=SILVER_MEMBERSHIP |
| 407 | + ), |
| 408 | + CorporateMember( |
| 409 | + display_name="Bronze company", membership_level=BRONZE_MEMBERSHIP |
| 410 | + ), |
| 411 | + ] |
| 412 | + ) |
| 413 | + for obj in objs: |
| 414 | + obj.invoice_set.create(amount=4, expiration_date=date(3000, 1, 1)) |
| 415 | + |
| 416 | + blog_entry = Entry.objects.create( |
| 417 | + pub_date=date(2005, 7, 21), |
| 418 | + is_active=True, |
| 419 | + headline="Django election results", |
| 420 | + slug="a", |
| 421 | + author="DSF Board", |
| 422 | + ) |
| 423 | + urls = [ |
| 424 | + reverse("weblog:index"), |
| 425 | + reverse( |
| 426 | + "weblog:entry", |
| 427 | + kwargs={ |
| 428 | + "year": blog_entry.pub_date.year, |
| 429 | + "month": blog_entry.pub_date.strftime("%b").lower(), |
| 430 | + "day": blog_entry.pub_date.day, |
| 431 | + "slug": blog_entry.slug, |
| 432 | + }, |
| 433 | + ), |
| 434 | + reverse( |
| 435 | + "weblog:archive-year", |
| 436 | + kwargs={"year": blog_entry.pub_date.year}, |
| 437 | + ), |
| 438 | + reverse( |
| 439 | + "weblog:archive-month", |
| 440 | + kwargs={ |
| 441 | + "year": blog_entry.pub_date.year, |
| 442 | + "month": blog_entry.pub_date.strftime("%b").lower(), |
| 443 | + }, |
| 444 | + ), |
| 445 | + reverse( |
| 446 | + "weblog:archive-day", |
| 447 | + kwargs={ |
| 448 | + "year": blog_entry.pub_date.year, |
| 449 | + "month": blog_entry.pub_date.strftime("%b").lower(), |
| 450 | + "day": blog_entry.pub_date.day, |
| 451 | + }, |
| 452 | + ), |
| 453 | + ] |
| 454 | + for url in urls: |
| 455 | + with self.subTest(url=url): |
| 456 | + response = self.client.get(url) |
| 457 | + self.assertContains(response, "Diamond and Platinum Members") |
| 458 | + self.assertContains(response, "Platinum company") |
| 459 | + self.assertContains(response, "Diamond company") |
| 460 | + self.assertNotContains(response, "Gold company") |
| 461 | + self.assertNotContains(response, "Silver company") |
| 462 | + self.assertNotContains(response, "Bronze company") |
| 463 | + |
384 | 464 | def test_anonymous_user_cannot_see_unpublished_entries(self): |
385 | 465 | """ |
386 | 466 | Anonymous users can't see unpublished entries at all (list or detail view) |
|
0 commit comments