From c9c9f1d15048887be06d8306f706ca6723fd7f82 Mon Sep 17 00:00:00 2001 From: hohoTT <609029365@qq.com> Date: Sun, 9 Aug 2015 20:58:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9problem=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E4=B8=ADdata=E5=8F=98=E9=87=8F=E4=BB=A5=E5=8F=8A=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E5=88=9B=E5=BB=BA=E4=B8=AD=E5=90=84=E4=B8=AA=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E4=B9=8B=E9=97=B4=E7=9A=84=E6=8D=A2=E8=A1=8C=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- problem/tests.py | 66 +++++++++++++++++++++++++++++++++++------------- problem/views.py | 2 +- 2 files changed, 50 insertions(+), 18 deletions(-) diff --git a/problem/tests.py b/problem/tests.py index 9fb0406..5bf89ba 100644 --- a/problem/tests.py +++ b/problem/tests.py @@ -30,9 +30,16 @@ class ProblemAdminTest(APITestCase): def test_success_problem(self): self.client.login(username="test", password="testaa") ProblemTag.objects.create(name="tag1", description="destag1") - data = {"title": "title1", "description": "des1", "test_case_id": "1", "source": "source1", - "sample": [{"input": "1 1", "output": "2"}], "time_limit": "100", "memory_limit": "1000", - "difficulty": "1", "hint": "hint1", "tags": [1]} + data = {"title": "title1", + "description": "des1", + "test_case_id": "1", + "source": "source1", + "sample": [{"input": "1 1", "output": "2"}], + "time_limit": "100", + "memory_limit": "1000", + "difficulty": "1", + "hint": "hint1", + "tags": [1]} response = self.client.post(self.url, data=data) self.assertEqual(response.data["code"], 0) @@ -47,16 +54,28 @@ class ProblemAdminTest(APITestCase): self.client.login(username="test", password="testaa") ProblemTag.objects.create(name="tag1", description="destag1") tags = ProblemTag.objects.filter(id__in=[1]) - problem = Problem.objects.create(title="title1", description="des1", - test_case_id="1", source="source1", + problem = Problem.objects.create(title="title1", + description="des1", + test_case_id="1", + source="source1", sample=[{"input": "1 1", "output": "2"}], - time_limit=100, memory_limit=1000, - difficulty=1, hint="hint1", + time_limit=100, + memory_limit=1000, + difficulty=1, + hint="hint1", created_by=User.objects.get(username="test")) problem.tags.add(*tags) - data = {"id": 2, "title": "title1", "description": "des1", "test_case_id": "1", "source": "source1", - "sample": [{"input": "1 1", "output": "2"}], "time_limit": "100", "memory_limit": "1000", - "difficulty": "1", "hint": "hint1", "tags": [1]} + data = {"id": 2, + "title": "title1", + "description": "des1", + "test_case_id": "1", + "source": "source1", + "sample": [{"input": "1 1", "output": "2"}], + "time_limit": "100", + "memory_limit": "1000", + "difficulty": "1", + "hint": "hint1", + "tags": [1]} response = self.client.put(self.url, data=data) self.assertEqual(response.data, {"code": 1, "data": u"该题目不存在!"}) @@ -66,16 +85,29 @@ class ProblemAdminTest(APITestCase): ProblemTag.objects.create(name="tag1", description="destag1") ProblemTag.objects.create(name="tag2", description="destag2") tags = ProblemTag.objects.filter(id__in=[1]) - problem0 = Problem.objects.create(title="title1", description="des1", - test_case_id="1", source="source1", + problem0 = Problem.objects.create(title="title1", + description="des1", + test_case_id="1", + source="source1", sample=[{"input": "1 1", "output": "2"}], - time_limit=100, memory_limit=1000, - difficulty=1, hint="hint1", + time_limit=100, + memory_limit=1000, + difficulty=1, + hint="hint1", created_by=User.objects.get(username="test")) problem0.tags.add(*tags) - data = {"id": 1, "title": "title1", "description": "des1", "test_case_id": "1", "source": "source1", - "sample": [{"input": "1 1", "output": "2"}], "time_limit": "100", "memory_limit": "1000", - "difficulty": "1", "hint": "hint1", "visible": True, "tags": [1, 2]} + data = {"id": 1, + "title": "title1", + "description": "des1", + "test_case_id": "1", + "source": "source1", + "sample": [{"input": "1 1", "output": "2"}], + "time_limit": "100", + "memory_limit": "1000", + "difficulty": "1", + "hint": "hint1", + "visible": True, + "tags": [1, 2]} problem = Problem.objects.get(id=data["id"]) problem.tags.remove(*problem.tags.all()) problem.tags.add(*ProblemTag.objects.filter(id__in=data["tags"])) diff --git a/problem/views.py b/problem/views.py index cf45d93..12564b0 100644 --- a/problem/views.py +++ b/problem/views.py @@ -86,7 +86,7 @@ class ProblemAPIView(APIView): """ 题目分页json api接口 --- - response_serializer: ProblemSerializer + response_serializer: ProblemSerializer """ problem = Problem.objects.all().order_by("-last_update_time") visible = request.GET.get("visible", None)