Skip to content

Commit ff1ad8b

Browse files
committed
Insert New Test Data And Update test_views.py
More events are created to test particular scenarios of events especially events set to start or end at a future year.
1 parent 4198812 commit ff1ad8b

File tree

1 file changed

+27
-7
lines changed

1 file changed

+27
-7
lines changed

events/tests/test_views.py

Lines changed: 27 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from django.test import TestCase
77
from django.utils import timezone
88

9-
from ..models import Calendar, Event, EventCategory, EventLocation, RecurringRule
9+
from ..models import Calendar, Event, EventCategory, EventLocation, RecurringRule, OccurringRule
1010
from ..templatetags.events import get_events_upcoming
1111
from users.factories import UserFactory
1212

@@ -18,6 +18,11 @@ def setUpTestData(cls):
1818
cls.calendar = Calendar.objects.create(creator=cls.user, slug="test-calendar")
1919
cls.event = Event.objects.create(creator=cls.user, calendar=cls.calendar)
2020
cls.event_past = Event.objects.create(title='Past Event', creator=cls.user, calendar=cls.calendar)
21+
cls.event_single_day = Event.objects.create(title="Single Day Event", creator=cls.user, calendar=cls.calendar)
22+
cls.event_future_start_following_year = Event.objects.create(title='Event Starts Following Year',
23+
creator=cls.user, calendar=cls.calendar)
24+
cls.event_future_end_following_year = Event.objects.create(title='Event Ends Following Year',
25+
creator=cls.user, calendar=cls.calendar)
2126

2227
cls.now = timezone.now()
2328

@@ -34,12 +39,27 @@ def setUpTestData(cls):
3439
begin=cls.now - datetime.timedelta(days=2),
3540
finish=cls.now - datetime.timedelta(days=1),
3641
)
37-
42+
cls.rule_single_day = OccurringRule.objects.create(
43+
event=cls.event_single_day,
44+
dt_start=recurring_time_dtstart,
45+
dt_end=recurring_time_dtstart
46+
)
47+
cls.rule_future_start_year = OccurringRule.objects.create(
48+
event=cls.event_future_start_following_year,
49+
dt_start=recurring_time_dtstart + datetime.timedelta(weeks=52),
50+
dt_end=recurring_time_dtstart + datetime.timedelta(weeks=53),
51+
)
52+
cls.rule_future_end_year = OccurringRule.objects.create(
53+
event=cls.event_future_end_following_year,
54+
dt_start=recurring_time_dtstart,
55+
dt_end=recurring_time_dtend + datetime.timedelta(weeks=52)
56+
)
3857
def test_events_homepage(self):
3958
url = reverse('events:events')
4059
response = self.client.get(url)
4160
self.assertEqual(response.status_code, 200)
42-
self.assertEqual(len(response.context['object_list']), 1)
61+
self.assertEqual(len(response.context['object_list']), 4)
62+
self.assertIn(Event.objects.last().title, response.content.decode())
4363

4464
def test_calendar_list(self):
4565
calendars_count = Calendar.objects.count()
@@ -54,7 +74,7 @@ def test_event_list(self):
5474
response = self.client.get(url)
5575

5676
self.assertEqual(response.status_code, 200)
57-
self.assertEqual(len(response.context['object_list']), 1)
77+
self.assertEqual(len(response.context['object_list']), 4)
5878

5979
url = reverse('events:event_list_past', kwargs={"calendar_slug": 'unexisting'})
6080
response = self.client.get(url)
@@ -114,7 +134,7 @@ def test_event_list_date(self):
114134
response = self.client.get(url)
115135
self.assertEqual(response.status_code, 200)
116136
self.assertEqual(response.context['object'], dt.date())
117-
self.assertEqual(len(response.context['object_list']), 2)
137+
self.assertEqual(len(response.context['object_list']), 5)
118138

119139
def test_eventlocation_list(self):
120140
venue = EventLocation.objects.create(
@@ -150,12 +170,12 @@ def test_event_detail(self):
150170
self.assertEqual(self.event, response.context['object'])
151171

152172
def test_upcoming_tag(self):
153-
self.assertEqual(len(get_events_upcoming()), 1)
173+
self.assertEqual(len(get_events_upcoming()), 4)
154174
self.assertEqual(len(get_events_upcoming(only_featured=True)), 0)
155175
self.rule.begin = self.now - datetime.timedelta(days=3)
156176
self.rule.finish = self.now - datetime.timedelta(days=2)
157177
self.rule.save()
158-
self.assertEqual(len(get_events_upcoming()), 0)
178+
self.assertEqual(len(get_events_upcoming()), 3)
159179

160180

161181
class EventSubmitTests(TestCase):

0 commit comments

Comments
 (0)