Makes extra content optional

This commit is contained in:
Mouse Reeve
2021-05-20 12:36:42 -07:00
parent 952eceb243
commit cefc5994a6
5 changed files with 81 additions and 6 deletions

View File

@ -51,9 +51,11 @@ class AnnouncementViews(TestCase):
def test_announcement_page(self):
"""there are so many views, this just makes sure it LOADS"""
announcement = models.Announcement.objects.create(preview="hi", user=self.local_user)
announcement = models.Announcement.objects.create(
preview="hi", user=self.local_user
)
view = views.Announcements.as_view()
view = views.Announcement.as_view()
request = self.factory.get("")
request.user = self.local_user
request.user.is_superuser = True
@ -63,3 +65,72 @@ class AnnouncementViews(TestCase):
self.assertIsInstance(result, TemplateResponse)
result.render()
self.assertEqual(result.status_code, 200)
def test_create_announcement(self):
"""create a new announcement"""
view = views.Announcements.as_view()
form = forms.AnnouncementForm()
form.data["preview"] = "hi hi"
form.data["start_date"] = "2021-05-20"
form.data["user"] = self.local_user.id
request = self.factory.post("", form.data)
request.user = self.local_user
request.user.is_superuser = True
view(request)
announcement = models.Announcement.objects.get()
self.assertEqual(announcement.preview, "hi hi")
self.assertEqual(announcement.start_date.year, 2021)
self.assertEqual(announcement.start_date.month, 5)
self.assertEqual(announcement.start_date.day, 20)
def test_edit_announcement(self):
"""edit an announcement"""
announcement = models.Announcement.objects.create(
preview="hi", user=self.local_user
)
view = views.Announcement.as_view()
form = forms.AnnouncementForm(instance=announcement)
form.data["preview"] = "hi hi"
form.data["start_date"] = "2021-05-20"
form.data["user"] = self.local_user.id
request = self.factory.post("", form.data)
request.user = self.local_user
request.user.is_superuser = True
view(request, announcement.id)
announcement.refresh_from_db()
self.assertEqual(announcement.preview, "hi hi")
self.assertEqual(announcement.start_date.year, 2021)
self.assertEqual(announcement.start_date.month, 5)
self.assertEqual(announcement.start_date.day, 20)
def test_delete_announcement(self):
"""delete an announcement"""
announcement = models.Announcement.objects.create(
preview="hi", user=self.local_user
)
view = views.delete_announcement.as_view()
request = self.factory.post("")
request.user = self.local_user
request.user.is_superuser = True
view(request, announcement.id)
self.assertFalse(models.Announcement.objects.exists())
def test_view_announcement(self):
"""display announcement on other pages"""
view = views.User.as_view()
request = self.factory.get("")
result = view(request)
self.assertIsInstance(result, TemplateResponse)
result.render()
self.assertEqual(result.status_code, 200)