Skip to content

Commit d40948f

Browse files
Merge pull request #37 from MoceanAPI/add-token
updated test case and added new checking
2 parents 07bacd6 + 24c2cde commit d40948f

21 files changed

+160
-128
lines changed

moceansdk/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ def __init__(self, obj_auth, options=None):
2020
if obj_auth.get_auth_method().lower() == 'basic':
2121
if (not obj_auth.get_params()['mocean-api-key'] or not obj_auth.get_params()['mocean-api-secret']) and not obj_auth.get_params()['mocean-api-token']:
2222
raise RequiredFieldException(
23-
"Api key or api secret and api token for client object can't be empty.")
23+
"Api key and api secret or api token for client object can't be empty.")
2424
else:
2525
raise MoceanErrorException("unsupported auth method")
2626

moceansdk/modules/__init__.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ class AbstractClient(object):
1010
def __init__(self, obj_auth, transmitter):
1111
self._params = obj_auth.get_params()
1212
self._transmitter = transmitter
13-
self._required_fields = ['mocean-api-key', 'mocean-api-secret']
13+
self._required_fields = []
1414

1515
def create(self, params):
1616
if isinstance(params, dict):
@@ -32,3 +32,17 @@ def is_required_field_set(self):
3232
for x in self._required_fields:
3333
if x not in self._params:
3434
raise RequiredFieldException("%s is mandatory field" % x)
35+
36+
def is_api_credentials_set(self):
37+
if self._params['mocean-api-token'] == "":
38+
has_api_key = 'mocean-api-key' in self._params
39+
has_api_secret = 'mocean-api-secret' in self._params
40+
41+
if not has_api_key and not has_api_secret:
42+
raise RequiredFieldException("Missing api token")
43+
44+
if not has_api_key:
45+
raise RequiredFieldException("Missing api key")
46+
47+
if not has_api_secret:
48+
raise RequiredFieldException("Missing api secret")

moceansdk/modules/account/balance.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ class Balance(AbstractClient):
55

66
def __init__(self, obj_auth, transmitter):
77
super(Balance, self).__init__(obj_auth, transmitter)
8-
self._required_fields = ['mocean-api-key', 'mocean-api-secret']
8+
self._required_fields = []
99

1010
def set_resp_format(self, param):
1111
self._params['mocean-resp-format'] = param
@@ -17,6 +17,7 @@ def inquiry(self, params=None):
1717

1818
super(Balance, self).create(params)
1919
self.create_final_params()
20-
#self.is_required_field_set()
20+
self.is_required_field_set()
21+
self.is_api_credentials_set()
2122

2223
return self._transmitter.get('/account/balance', self._params)

moceansdk/modules/account/pricing.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ class Pricing(AbstractClient):
55

66
def __init__(self, obj_auth, transmitter):
77
super(Pricing, self).__init__(obj_auth, transmitter)
8-
self._required_fields = ['mocean-api-key', 'mocean-api-secret']
8+
self._required_fields = []
99

1010
def set_mcc(self, param):
1111
self._params['mocean-mcc'] = param
@@ -29,6 +29,7 @@ def inquiry(self, params=None):
2929

3030
super(Pricing, self).create(params)
3131
self.create_final_params()
32-
#self.is_required_field_set()
32+
self.is_required_field_set()
33+
self.is_api_credentials_set()
3334

3435
return self._transmitter.get('/account/pricing', self._params)

moceansdk/modules/command/command.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@ class Command(AbstractClient):
1010
def __init__(self, obj_auth, transmitter):
1111
super(Command, self).__init__(obj_auth, transmitter)
1212
self.channel = channel.TELEGRAM
13-
self._required_fields = ['mocean-api-key',
14-
'mocean-api-secret', 'mocean-command']
13+
self._required_fields = ['mocean-command']
1514

1615
def set_event_url(self, event_url):
1716
self._params['mocean-event-url'] = event_url
@@ -44,7 +43,8 @@ def execute(self, params=None):
4443

4544
super(Command, self).create(params)
4645
self.create_final_params()
47-
#self.is_required_field_set()
46+
self.is_required_field_set()
47+
self.is_api_credentials_set()
4848

4949
response = self._transmitter.post('/send-message', self._params)
5050
return response

moceansdk/modules/message/message_status.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ class MessageStatus(AbstractClient):
55

66
def __init__(self, obj_auth, transmitter):
77
super(MessageStatus, self).__init__(obj_auth, transmitter)
8-
self._required_fields = ['mocean-api-key',
9-
'mocean-api-secret', 'mocean-msgid']
8+
self._required_fields = ['mocean-msgid']
109

1110
def set_msgid(self, param):
1211
self._params['mocean-msgid'] = param
@@ -22,7 +21,8 @@ def inquiry(self, params=None):
2221

2322
super(MessageStatus, self).create(params)
2423
self.create_final_params()
25-
#self.is_required_field_set()
24+
self.is_required_field_set()
25+
self.is_api_credentials_set()
2626

2727
response = self._transmitter.get('/report/message', self._params)
2828
return response

moceansdk/modules/message/sms.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ class Sms(AbstractClient):
66
def __init__(self, obj_auth, transmitter):
77
super(Sms, self).__init__(obj_auth, transmitter)
88
self._required_fields = [
9-
'mocean-api-key', 'mocean-api-secret', 'mocean-text', 'mocean-from', 'mocean-to']
9+
'mocean-text', 'mocean-from', 'mocean-to']
1010

1111
def set_from(self, param):
1212
self._params['mocean-from'] = param
@@ -80,7 +80,8 @@ def send(self, params=None):
8080

8181
super(Sms, self).create(params)
8282
self.create_final_params()
83-
#self.is_required_field_set()
83+
self.is_required_field_set()
84+
self.is_api_credentials_set()
8485

8586
response = self._transmitter.post('/sms', self._params)
8687
return response

moceansdk/modules/message/verify_request.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@ class VerifyRequest(AbstractClient):
66

77
def __init__(self, obj_auth, transmitter):
88
super(VerifyRequest, self).__init__(obj_auth, transmitter)
9-
self._required_fields = ['mocean-api-key',
10-
'mocean-api-secret', 'mocean-to', 'mocean-brand']
9+
self._required_fields = ['mocean-to', 'mocean-brand']
1110
self._channel = Channel.AUTO
1211
self.__is_resend = False
1312

@@ -53,7 +52,8 @@ def send(self, params=None):
5352

5453
super(VerifyRequest, self).create(params)
5554
self.create_final_params()
56-
#self.is_required_field_set()
55+
self.is_required_field_set()
56+
self.is_api_credentials_set()
5757

5858
verify_request_url = "/verify"
5959
if self.__is_resend:
@@ -72,7 +72,6 @@ def send(self, params=None):
7272
def resend(self, params=None):
7373
self.send_as(Channel.SMS)
7474
self.__is_resend = True
75-
self._required_fields = ['mocean-api-key',
76-
'mocean-api-secret', 'mocean-reqid']
75+
self._required_fields = ['mocean-reqid']
7776

7877
return self.send(params)

moceansdk/modules/message/verify_validate.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ class VerifyValidate(AbstractClient):
66
def __init__(self, obj_auth, transmitter):
77
super(VerifyValidate, self).__init__(obj_auth, transmitter)
88
self._required_fields = [
9-
'mocean-api-key', 'mocean-api-secret', 'mocean-reqid', 'mocean-code']
9+
'mocean-reqid', 'mocean-code']
1010

1111
def set_reqid(self, param):
1212
self._params['mocean-reqid'] = param
@@ -26,7 +26,8 @@ def send(self, params=None):
2626

2727
super(VerifyValidate, self).create(params)
2828
self.create_final_params()
29-
#self.is_required_field_set()
29+
self.is_required_field_set()
30+
self.is_api_credentials_set()
3031

3132
response = self._transmitter.post('/verify/check', self._params)
3233
return response

moceansdk/modules/number_lookup/number_lookup.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ class NumberLookup(AbstractClient):
55

66
def __init__(self, obj_auth, transmitter):
77
super(NumberLookup, self).__init__(obj_auth, transmitter)
8-
self._required_fields = ['mocean-api-key',
9-
'mocean-api-secret', 'mocean-to']
8+
self._required_fields = ['mocean-to']
109

1110
def set_to(self, param):
1211
self._params['mocean-to'] = param
@@ -26,7 +25,8 @@ def inquiry(self, params=None):
2625

2726
super(NumberLookup, self).create(params)
2827
self.create_final_params()
29-
#self.is_required_field_set()
28+
self.is_required_field_set()
29+
self.is_api_credentials_set()
3030

3131
response = self._transmitter.post('/nl', self._params)
3232
return response

0 commit comments

Comments
 (0)