Skip to content
This repository was archived by the owner on Feb 28, 2025. It is now read-only.

Commit f3640f7

Browse files
committed
필요없는 파일 제거 및 Unit Test 추가
1 parent e667992 commit f3640f7

17 files changed

Lines changed: 185 additions & 4 deletions

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
*.pyc
22
*/.idea/*
3-
*/__pycache__
3+
*__pycache__
44
test.py
5-
test.jpg

examples/coolsms_unit_test.py

Lines changed: 184 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,184 @@
1+
# vi:set sw=4 ts=4 expandtab:
2+
3+
import sys
4+
import unittest
5+
sys.path.insert(0, "../")
6+
7+
from sdk.api.message import Message
8+
from sdk.api.group_message import GroupMessage
9+
from sdk.api.sender_id import SenderID
10+
from sdk.api.image import Image
11+
from sdk.coolsms import Coolsms
12+
from sdk.exceptions import CoolsmsException
13+
14+
import sys,json
15+
16+
def makeSuite(testcase,tests):
17+
return unittest.TestSuite(map(testcase,tests)) #testcase를 이용해서 testsuite생성
18+
19+
## @class CoolsmsUnitTest
20+
# @brief Coolsms Python SDK Unit Test
21+
class CoolsmsUnitTest(unittest.TestCase):
22+
23+
api_key = "NCS57A43A134D2B9"
24+
api_secret = "9BF07E949C74516A70D7C6A4D6B2B0D3"
25+
26+
def setUp(self):
27+
pass
28+
29+
## @brief python sdk 'message' resource test
30+
def test_message(self):
31+
cool = Message(self.api_key, self.api_secret)
32+
33+
## send
34+
params = {
35+
'type':'sms',
36+
'to':'01000000000',
37+
'from':'01000000000',
38+
'text':'Test Message'
39+
}
40+
try:
41+
cool.send(params)
42+
except CoolsmsException as e:
43+
# 402는 잔액부족이기 때문에 테스트 실패사유가 안됨
44+
if e.code == 402:
45+
pass
46+
47+
## status : response 가 None값이 아니라면 성공
48+
response = cool.status()
49+
self.assertIsNotNone(response[0]['registdate'])
50+
51+
## sent
52+
try:
53+
cool.sent()
54+
except CoolsmsException as e:
55+
# 404는 메시지 내역이 없는 것이기 때문에 테스트 실패사유가 안됨
56+
if e.code == 404:
57+
pass
58+
59+
## balane
60+
response = cool.balance()
61+
self.assertIsNotNone(response['deferred_payment'])
62+
63+
## cancel
64+
params = {
65+
'message_id':'TESTMESSAGEID',
66+
}
67+
self.assertIsNotNone(cool.cancel(params))
68+
69+
## @brief python sdk 'group_message' resource test
70+
def test_group_message(self):
71+
cool = GroupMessage(self.api_key, self.api_secret)
72+
73+
## create group
74+
response = cool.create_group()
75+
group_id = response['group_id']
76+
self.assertIsNotNone(group_id)
77+
78+
## group list
79+
response = cool.get_group_list()
80+
self.assertIsNotNone(response['list'][0])
81+
82+
## add messages
83+
params = {
84+
'group_id':group_id,
85+
'to':'01000000000',
86+
'from':'01000000000',
87+
'text':'TestGroupMessage'
88+
}
89+
response = cool.add_messages(params)
90+
self.assertIsNotNone(response['error_count'])
91+
92+
## add messages json
93+
params = [
94+
{"from":"01000000000", "to":"01000000001", "text":"TestGroupMessage"},
95+
{"from":"01000000000", "to":"01000000002", "text":"TestGroupMessage"}
96+
]
97+
messages = json.dumps(params)
98+
response = cool.add_messages_json(group_id, messages)
99+
self.assertIsNotNone(response[0]['error_count'])
100+
101+
## get message list
102+
params = {'group_id':group_id}
103+
try:
104+
cool.get_message_list(params)
105+
except CoolsmsException as e:
106+
# 404는 메시지 내역이 없는 것이기 때문에 테스트 실패사유가 안됨
107+
if e.code == 404:
108+
pass
109+
110+
## delete messages
111+
message_id = 'TESTMESSAGEID'
112+
response = cool.delete_messages(group_id, message_id)
113+
self.assertIsNotNone(response['error_count'])
114+
115+
## send
116+
try:
117+
cool.send(params)
118+
except CoolsmsException as e:
119+
# 402는 잔액부족이기 때문에 테스트 실패사유가 안됨
120+
if e.code == 402:
121+
pass
122+
123+
## @brief python sdk 'image' resource test
124+
def test_image(self):
125+
cool = Image(self.api_key, self.api_secret)
126+
image = 'image/test.jpg'
127+
128+
## upload image
129+
response = cool.upload_image(image)
130+
image_id = response['image_id']
131+
132+
## get image list
133+
response = cool.get_image_list()
134+
self.assertIsNotNone(response['total_count'])
135+
136+
## get image info
137+
response = cool.get_image_info(image_id)
138+
self.assertIsNotNone(response['file_name'])
139+
140+
## delete images
141+
response = cool.delete_images(image_id)
142+
self.assertIsNotNone(response['success_count'])
143+
144+
## @brief python sdk 'sender_id' resource test
145+
def test_sender_id(self):
146+
cool = SenderID(self.api_key, self.api_secret)
147+
148+
## register
149+
phone = "01000000000"
150+
response = cool.register(phone)
151+
self.assertIsNotNone(response['handle_key'])
152+
handle_key = response['handle_key']
153+
154+
## verify
155+
try:
156+
cool.verify(handle_key)
157+
except CoolsmsException as e:
158+
# 401은 대기중 상태로 테스트 실패사유가 안됨
159+
if e.code == 401:
160+
pass
161+
162+
## delete
163+
response = cool.delete(handle_key)
164+
self.assertIsNone(response)
165+
166+
## get list
167+
self.assertIsNotNone(cool.get_list())
168+
169+
## set_default
170+
self.assertIsNone(cool.set_default(handle_key))
171+
172+
## get_default
173+
try:
174+
cool.get_default()
175+
except CoolsmsException as e:
176+
# 404는 default sender id가 없는 것이므로 테스트 실패사유가 안됨
177+
if e.code == 404:
178+
pass
179+
180+
181+
if __name__ == "__main__":
182+
suite = makeSuite(CoolsmsUnitTest,['test_message', 'test_group_message', 'test_image', 'test_sender_id'])
183+
unittest.TextTestRunner(verbosity=2).run(suite)
184+
sys.exit()

sdk/__init__.pyc

-153 Bytes
Binary file not shown.

sdk/api/__init__.pyc

-157 Bytes
Binary file not shown.
-153 Bytes
Binary file not shown.
-3.84 KB
Binary file not shown.
-2.22 KB
Binary file not shown.
-2.46 KB
Binary file not shown.
-287 Bytes
Binary file not shown.
-2.45 KB
Binary file not shown.

0 commit comments

Comments
 (0)