Singup get tests

This commit is contained in:
Aarni Halinen
2019-11-10 01:20:31 +02:00
parent f4b55b7863
commit 0f50daf289
+81 -9
View File
@@ -1,16 +1,88 @@
from django.test import TestCase
from django.core.files import File
from django.contrib.auth.models import User
from rest_framework.test import APITestCase
from django.utils import timezone
from rest_framework import status
from rest_framework.test import force_authenticate
from webapp.models import Tag, Feed
from webapp.serializers import TagSerializer, FeedSerializer
from rest_framework.test import APITestCase, APIRequestFactory, force_authenticate
from collections import OrderedDict
from itertools import islice
import tempfile
from webapp.models import Signup, SignupForm
from webapp.serializers import SignupSerializer, SignupFormSerializer
from webapp.tests.event_fixture import createEventObject, createEventJSON
from webapp.utils import month_from_now
import json
URL = "/api/signup/"
ALL_QUESTION_TYPES = json.dumps([
])
def createSignupForm(name="Form1", start_time=timezone.now(), end_time=month_from_now(), questions=ALL_QUESTION_TYPES, visible=True):
return SignupForm.objects.create(
title=name,
start_time=start_time,
end_time=end_time,
questions=questions,
visible=visible
)
def createSignup(form, answer):
return Signup.objects.create(
signupForm=form,
answer=answer
)
class SignupTestCase(APITestCase):
pass
def setUp(self):
self.signupForm = createSignupForm()
self.event = createEventObject(signup_id=self.signupForm.id)
self.signup1 = createSignup(self.signupForm, json.dumps([]))
self.signup2 = createSignup(self.signupForm, json.dumps([]))
username, password = "test_admin", "password123"
self.authClient = User.objects.create_superuser(username, "myemail@test.com", password)
def test_get_signups(self):
expected = SignupSerializer(
self.signupForm.signup_set.all(),
many=True
)
print(expected.data)
# Unauthorized
response = self.client.get(URL, format="json")
self.assertTrue(response.status_code, status.HTTP_401_UNAUTHORIZED)
# Authenticate
self.client.force_authenticate(user=self.authClient)
response = self.client.get(URL, format="json")
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertEqual(response.data["results"], expected.data)
def test_get_single_signup(self):
id = self.signup1.id
expected = SignupSerializer(
Signup.objects.get(id=id)
)
# Unauthorized
response = self.client.get(f"{URL}{id}/", format="json")
self.assertTrue(response.status_code, status.HTTP_401_UNAUTHORIZED)
# Authenticate
self.client.force_authenticate(user=self.authClient)
response = self.client.get(f"{URL}{id}/", format="json")
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertEqual(response.data, expected.data)
def test_create_signup(self):
pass
def test_update_signup(self):
pass
def test_delete_signup(self):
pass