Skip to content

Commit 716c65c

Browse files
committed
Test: 테스트 케이스 코드 롤백 (devdev)
* Merge 중 발생한 코드 누락 수정
1 parent 776d175 commit 716c65c

File tree

1 file changed

+78
-49
lines changed

1 file changed

+78
-49
lines changed

pyconweb2022/program/tests.py

Lines changed: 78 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -6,57 +6,86 @@
66

77
import datetime
88

9-
from django.contrib.auth import get_user_model
10-
from django.test import TestCase
11-
from rest_framework.test import APIRequestFactory
129

13-
from program.models import Proposal, ProgramCategory
14-
from program.viewsets import ProposalViewSet
10+
class ProgramApiTest(TestCase):
11+
def setUp(self) -> None:
12+
user = User.objects.create()
13+
user.username = "gdhong"
14+
user.password = "password"
15+
user.email = "[email protected]"
16+
user.save()
1517

16-
User = get_user_model()
18+
category = ProgramCategory(name="임시", slug="temp")
19+
category.save()
1720

21+
Proposal(
22+
user=user,
23+
user_name="홍길동",
24+
title="세션 제목1",
25+
brief="요약1",
26+
desc="설명1",
27+
comment="comment1",
28+
difficulty="I",
29+
duration="L",
30+
language="K",
31+
category=category,
32+
accepted=True,
33+
video_open_at=datetime.datetime.strptime(
34+
config.PYCON_KR_2022_DATE1, "%Y%m%d"
35+
),
36+
).save()
1837

19-
class ProgramTest(TestCase):
20-
user_name = ["park", "seo", "kim", "jung", "kang"]
21-
title = ["제목1", "제목2", "제목3", "제목4", "제목5"]
22-
brief = ["brief1", "brief2", "brief3", "brief4", "brief5"]
23-
desc = ["desc1", "desc2", "desc3", "desc4", "desc5"]
24-
difficulty = ["B", "I", "E", "B", "I"]
25-
duration = ["S", "L", "S", "L", "S"]
38+
Proposal(
39+
user=user,
40+
user_name="김철수",
41+
title="세션 제목2",
42+
brief="요약2",
43+
desc="설명2",
44+
comment="comment2",
45+
difficulty="I",
46+
duration="L",
47+
language="K",
48+
category=category,
49+
accepted=True,
50+
video_open_at=datetime.datetime.strptime(
51+
config.PYCON_KR_2022_DATE2, "%Y%m%d"
52+
),
53+
).save()
2654

27-
def setUp(self) -> None:
28-
# 사용자 객체 생성
29-
for i in range(len(self.user_name)):
30-
new_user = User()
31-
new_user.username = self.user_name[i]
32-
new_user.set_password(self.user_name[i])
33-
new_user.save()
34-
35-
# Category 생성
36-
new_category = ProgramCategory()
37-
new_category.name = ["카테고리"]
38-
new_category.slug = ["category"]
39-
new_category.save()
40-
41-
# Proposal 생성
42-
target_user = User.objects.get(username=self.user_name[0])
43-
44-
for i in range(len(self.user_name)):
45-
new_proposal = Proposal()
46-
new_proposal.user = target_user
47-
new_proposal.title = self.title[i]
48-
new_proposal.brief = self.brief[i]
49-
new_proposal.desc = self.desc[i]
50-
new_proposal.difficulty = self.difficulty[i]
51-
new_proposal.duration = self.duration[i]
52-
new_proposal.category = new_category
53-
54-
new_proposal.save()
55-
56-
def test_ProposalViewSet(self):
57-
req_body = {}
58-
59-
request = APIRequestFactory().get("/api/program/list", req_body)
60-
response = ProposalViewSet().list(request=request)
61-
62-
self.assertEqual(len(response.data), len(self.user_name))
55+
Proposal(
56+
user=user,
57+
user_name="badUser",
58+
title="XXXXX",
59+
brief="XXX",
60+
desc="XXX",
61+
comment="XXX",
62+
difficulty="I",
63+
duration="L",
64+
language="K",
65+
category=category,
66+
accepted=False,
67+
video_open_at=datetime.datetime.strptime(
68+
config.PYCON_KR_2022_DATE2, "%Y%m%d"
69+
),
70+
).save()
71+
72+
def test_get_all_session(self):
73+
c = Client()
74+
response = c.get("/api/program/list/", {})
75+
76+
self.assertEqual(response.status_code, 200)
77+
self.assertEqual(len(response.data), 2)
78+
79+
def test_get_day1_session(self):
80+
c = Client()
81+
response = c.get("/api/program/list/day1/", {})
82+
83+
# self.assertEqual(response.status_code, 200)
84+
self.assertEqual(len(response.data), 1)
85+
86+
def test_get_day2_session(self):
87+
c = Client()
88+
response = c.get("/api/program/list/day2/", {})
89+
90+
# self.assertEqual(response.status_code, 200)
91+
self.assertEqual(len(response.data), 1)

0 commit comments

Comments
 (0)