Update test to match Todoviewset

This commit is contained in:
sosokker 2023-11-07 03:38:51 +07:00
parent 5e0b4012f5
commit 67a30ce114

View File

@ -1,21 +1,18 @@
from datetime import datetime, timedelta from datetime import datetime, timedelta
from django.urls import reverse from django.urls import reverse
from rest_framework import status from rest_framework import status
from rest_framework.test import APITestCase from rest_framework.test import APITestCase
from tasks.tests.utils import create_test_user, login_user from tasks.tests.utils import create_test_user, login_user
from ..models import Todo from tasks.models import Todo
class TodoCreateViewTests(APITestCase):
class TodoViewSetTests(APITestCase):
def setUp(self): def setUp(self):
self.user = create_test_user() self.user = create_test_user()
self.client = login_user(self.user) self.client = login_user(self.user)
self.url = reverse("add-task") self.url = reverse("todo-list")
self.due_date = datetime.now() + timedelta(days=5) self.due_date = datetime.now() + timedelta(days=5)
def test_create_valid_todo(self): def test_create_valid_todo(self):
""" """
Test creating a valid task using the API. Test creating a valid task using the API.
@ -28,7 +25,7 @@ class TodoCreateViewTests(APITestCase):
'priority': 1, 'priority': 1,
'difficulty': 1, 'difficulty': 1,
'user': self.user.id, 'user': self.user.id,
'end_event': self.due_date, 'end_event': self.due_date.strftime('%Y-%m-%dT%H:%M:%S'),
} }
response = self.client.post(self.url, data, format='json') response = self.client.post(self.url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_201_CREATED) self.assertEqual(response.status_code, status.HTTP_201_CREATED)
@ -42,7 +39,6 @@ class TodoCreateViewTests(APITestCase):
data = { data = {
'type': 'invalid', # Invalid task type 'type': 'invalid', # Invalid task type
} }
response = self.client.post(self.url, data, format='json') response = self.client.post(self.url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
self.assertEqual(Todo.objects.count(), 0) # No task should be created self.assertEqual(Todo.objects.count(), 0) # No task should be created
@ -55,7 +51,6 @@ class TodoCreateViewTests(APITestCase):
'title': 'Incomplete Task', 'title': 'Incomplete Task',
'type': 'habit', 'type': 'habit',
} }
response = self.client.post(self.url, data, format='json') response = self.client.post(self.url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
self.assertEqual(Todo.objects.count(), 0) # No task should be created self.assertEqual(Todo.objects.count(), 0) # No task should be created
@ -71,9 +66,8 @@ class TodoCreateViewTests(APITestCase):
'priority': 1, 'priority': 1,
'difficulty': 1, 'difficulty': 1,
'user': 999, # Invalid user ID 'user': 999, # Invalid user ID
'end_event': self.due_date, 'end_event': self.due_date.strftime('%Y-%m-%dT%H:%M:%S'),
} }
response = self.client.post(self.url, data, format='json') response = self.client.post(self.url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
self.assertEqual(Todo.objects.count(), 0) # No task should be created self.assertEqual(Todo.objects.count(), 0) # No task should be created