From 00de36ca446e6b1c4733975661eb1d30f2a0290a Mon Sep 17 00:00:00 2001 From: Aarni Halinen Date: Sat, 9 Nov 2019 23:58:21 +0200 Subject: [PATCH] Event CRUD tests --- webapp/tests/event_fixture.py | 18 ++++++------- webapp/tests/test_event.py | 48 +++++++++++++++++++++++++++-------- 2 files changed, 46 insertions(+), 20 deletions(-) diff --git a/webapp/tests/event_fixture.py b/webapp/tests/event_fixture.py index 6a54476..ac5b138 100644 --- a/webapp/tests/event_fixture.py +++ b/webapp/tests/event_fixture.py @@ -22,16 +22,14 @@ def createEventJSON(name="POST1", visible=True, start_time=timezone.now(), end_t "tags": tag_id, "tag_id": tag_id, "visible": visible, - "title": f"title_fi {name}", - # "title_fi": f"title_fi {name}",, - # "title_en": f"title_en {name}",, - "description": f"desc_fi {name}", - # "description_fi": f"desc_fi {name}", - # "description_en": f"desc_en {name}", - "content": f"content_fi {name}", - # "content_fi": f"content_fi {name}", - # "content_en": f"content_en {name}", + "title_fi": f"title_fi {name}", + "title_en": f"title_en {name}", + "description_fi": f"desc_fi {name}", + "description_en": f"desc_en {name}", + "content_fi": f"content_fi {name}", + "content_en": f"content_en {name}", "start_time": start_time, "end_time": end_time, - "signup_id": signup_id + "signup_id": signup_id, + "location": f"loc {name}" } diff --git a/webapp/tests/test_event.py b/webapp/tests/test_event.py index ccb23eb..d51763a 100644 --- a/webapp/tests/test_event.py +++ b/webapp/tests/test_event.py @@ -13,10 +13,6 @@ from webapp.tests.event_fixture import createEventObject, createEventJSON class EventTestCase(APITestCase): def setUp(self): - tag1 = tagBuilder() - tag2 = tagBuilder("testtag2") - self.testTagId = tag1.id - # Visible and relevant test1 = createEventObject( "Testitapahtuma1", @@ -40,6 +36,11 @@ class EventTestCase(APITestCase): visible=True, start_time=timezone.datetime(2018, 12, 9, 12, 0, 0), end_time=timezone.datetime(2020, 12, 9, 13, 0, 0)) + + # Add some tags + tag1 = tagBuilder() + tag2 = tagBuilder("testtag2") + self.testTagId = tag1.id test1.tags.add(tag1) test2.tags.add(tag2) self.testEventId = test1.id @@ -78,7 +79,7 @@ class EventTestCase(APITestCase): self.assertEqual(response.data, serializer.data) def test_get_invalid_event(self): - response = self.client.get("/api/events/15/", format="json") + response = self.client.get("/api/events/200/", format="json") self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND) def test_post_event(self): @@ -104,13 +105,40 @@ class EventTestCase(APITestCase): self.assertEqual(Event.objects.count(), 4) def test_update_event(self): - pass + # Authenticate + self.client.force_authenticate(user=self.authClient) + event = Event.objects.get(id=self.testEventId) + new = createEventJSON(name="Update1") + response = self.client.put( + f"/api/events/{self.testEventId}/", + new, + format="json" + ) + + self.assertEqual(response.status_code, status.HTTP_200_OK) + event = Event.objects.get(id=self.testEventId) + self.assertEqual(event.title_fi, "title_fi Update1") + self.assertEqual(Event.objects.count(), 4) def test_update_event_unauth(self): - pass + response = self.client.put( + f"/api/events/{self.testEventId}/", + createEventJSON(name="Update1"), + format="json" + ) + + self.assertEqual(response.status_code, status.HTTP_401_UNAUTHORIZED) + event = Event.objects.get(id=self.testEventId) + self.assertEqual(event.title_fi, "Testitapahtuma1") + self.assertEqual(Event.objects.count(), 4) def test_delete_event(self): - pass + response = self.client.delete(f"/api/events/{self.testEventId}/",) + self.assertEqual(response.status_code, status.HTTP_401_UNAUTHORIZED) + self.assertEqual(Event.objects.count(), 4) - def test_delete_event_unauth(self): - pass + # Authenticate + self.client.force_authenticate(user=self.authClient) + response = self.client.delete(f"/api/events/{self.testEventId}/") + self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT) + self.assertEqual(Event.objects.count(), 3)