diff --git a/problem/tests.py b/problem/tests.py index 278d811..f4f98cf 100644 --- a/problem/tests.py +++ b/problem/tests.py @@ -4,7 +4,7 @@ from rest_framework.test import APIRequestFactory, force_authenticate from .models import Problem -from .views import ProblemView, TagView +from .views import ProblemView, TagView, TagListView from account.models import User # Create your tests here. @@ -111,4 +111,18 @@ def testZ_get_tag(self): self.assertEqual(data.get("id"), ac_data["id"]) self.assertEqual(data.get("content"), ac_data["content"]) - self.assertEqual(data.get("color"), ac_data["color"]) \ No newline at end of file + self.assertEqual(data.get("color"), ac_data["color"]) + +class TagListViewTest(TestCase): + fixtures = ["testdatabase.yaml"] + + def setUp(self): + self.base_url = "/api/problem/tag/list" + self.factory = APIRequestFactory() + self.view = TagListView.as_view() + + def testA_get_list(self): + request = self.factory.get(self.base_url) + response = self.view(request) + self.assertEqual(response.status_code, status.HTTP_200_OK) + \ No newline at end of file diff --git a/problem/views.py b/problem/views.py index 0d642c3..1e43008 100644 --- a/problem/views.py +++ b/problem/views.py @@ -143,3 +143,14 @@ def get(self, request): res = queryset.count() return Response({"res": res}, status=status.HTTP_200_OK) +class TagListView(APIView): + + def get(self, request): + queryset = Tag.objects.all() + ts = TagSerializer(queryset, many=True) + + return Response({ + "detail": "Success", + "count": queryset.count(), + "res": ts.data + }, status=status.HTTP_200_OK) \ No newline at end of file