Skip to content

Commit e93a241

Browse files
committed
Add tests for other endpoints
1 parent b6cf05b commit e93a241

File tree

5 files changed

+170
-0
lines changed

5 files changed

+170
-0
lines changed

tests/test_hlr.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import unittest
2+
from messagebird import Client
3+
4+
try:
5+
from unittest.mock import Mock
6+
except ImportError:
7+
# mock was added to unittest in Python 3.3, but was an external library
8+
# before.
9+
from mock import Mock
10+
11+
12+
class TestHLR(unittest.TestCase):
13+
14+
def test_hlr(self):
15+
http_client = Mock()
16+
http_client.request.return_value = '{"id":"hlr-id","href":"https://rest.messagebird.com/hlr/hlr-id","msisdn":31612345678,"network":20406,"reference":"MyReference","status": "sent","createdDatetime": "2015-01-04T13:14:08+00:00","statusDatetime": "2015-01-04T13:14:09+00:00"}'
17+
18+
hlr = Client('', http_client).hlr('hlr-id')
19+
20+
http_client.request.assert_called_once_with('hlr/hlr-id', 'GET', None)
21+
22+
self.assertEqual('hlr-id', hlr.id)
23+
24+
def test_hlr_create(self):
25+
http_client = Mock()
26+
http_client.request.return_value = '{}'
27+
28+
Client('', http_client).hlr_create(31612345678, 'MyReference')
29+
30+
http_client.request.assert_called_once_with('hlr', 'POST', {'msisdn': 31612345678, 'reference': 'MyReference'})

tests/test_lookup.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import unittest
2+
from messagebird import Client
3+
4+
try:
5+
from unittest.mock import Mock
6+
except ImportError:
7+
# mock was added to unittest in Python 3.3, but was an external library
8+
# before.
9+
from mock import Mock
10+
11+
12+
class TestLookup(unittest.TestCase):
13+
14+
def test_lookup(self):
15+
http_client = Mock()
16+
http_client.request.return_value = '{"href": "https://rest.messagebird.com/lookup/31612345678","countryCode": "NL","countryPrefix": 31,"phoneNumber": 31612345678,"type": "mobile","formats": {"e164": "+31612345678","international": "+31 6 12345678","national": "06 12345678","rfc3966": "tel:+31-6-12345678"},"hlr": {"id": "hlr-id","network": 20416,"reference": "reference2000","status": "active","createdDatetime": "2015-12-15T08:19:24+00:00","statusDatetime": "2015-12-15T08:19:25+00:00"}}'
17+
18+
lookup = Client('', http_client).lookup('0612345678', {'countryCode': 'NL'})
19+
20+
http_client.request.assert_called_once_with('lookup/0612345678', 'GET', {'countryCode': 'NL'})
21+
22+
self.assertEqual('mobile', lookup.type)
23+
24+
def test_lookup_hlr(self):
25+
http_client = Mock()
26+
http_client.request.return_value = '{"id": "hlr-id","network": 20416,"reference": "reference2000","status": "active","createdDatetime": "2015-12-15T08:19:24+00:00","statusDatetime": "2015-12-15T08:19:25+00:00"}'
27+
28+
lookup_hlr = Client('', http_client).lookup_hlr(31612345678, {'reference': 'reference2000'})
29+
30+
http_client.request.assert_called_once_with('lookup/31612345678/hlr', 'GET', {'reference': 'reference2000'})
31+
32+
self.assertEqual(lookup_hlr.status, 'active')
33+
34+
def test_lookup_hlr_create(self):
35+
http_client = Mock()
36+
http_client.request.return_value = '{}'
37+
38+
Client('', http_client).lookup_hlr_create(31612345678, {'reference': 'MyReference'})
39+
40+
http_client.request.assert_called_once_with('lookup/31612345678/hlr', 'POST', {'reference': 'MyReference'})

tests/test_message.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import unittest
2+
from messagebird import Client
3+
4+
try:
5+
from unittest.mock import Mock
6+
except ImportError:
7+
# mock was added to unittest in Python 3.3, but was an external library
8+
# before.
9+
from mock import Mock
10+
11+
12+
class TestMessage(unittest.TestCase):
13+
14+
def test_message(self):
15+
http_client = Mock()
16+
http_client.request.return_value = '{"body": "Hello World","createdDatetime": "2015-01-05T10:02:59+00:00","datacoding": "plain","direction": "mt","gateway": 239,"href": "https://rest.messagebird.com/messages/message-id","id": "message-id","mclass": 1,"originator": "TestName","recipients": {"items": [{"recipient": 31612345678,"status": "sent","statusDatetime": "2015-01-05T10:02:59+00:00"}],"totalCount": 1,"totalDeliveredCount": 0,"totalDeliveryFailedCount": 0,"totalSentCount": 1},"reference": null,"scheduledDatetime": null,"type": "sms","typeDetails": {},"validity": null}'
17+
18+
message = Client('', http_client).message('message-id')
19+
20+
http_client.request.assert_called_once_with('messages/message-id', 'GET', None)
21+
22+
self.assertEqual('mt', message.direction)
23+
24+
def test_message_create(self):
25+
http_client = Mock()
26+
http_client.request.return_value = '{}'
27+
28+
Client('', http_client).message_create('MessageBird', ['31612345678', '31687654321'], 'Hello World', {'datacoding': 'unicode'})
29+
30+
http_client.request.assert_called_once_with('messages', 'POST', {'datacoding': 'unicode', 'originator': 'MessageBird', 'body': 'Hello World', 'recipients': '31612345678,31687654321' })

tests/test_verify.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import unittest
2+
from messagebird import Client
3+
4+
try:
5+
from unittest.mock import Mock
6+
except ImportError:
7+
# mock was added to unittest in Python 3.3, but was an external library
8+
# before.
9+
from mock import Mock
10+
11+
12+
class TestVerify(unittest.TestCase):
13+
14+
def test_verify(self):
15+
http_client = Mock()
16+
http_client.request.return_value = '{"id": "verify-id","href": "https://rest.messagebird.com/verify/verify-id","recipient": 31612345678,"reference": "MyReference","messages": {"href": "https://rest.messagebird.com/messages/message-id"},"status": "verified","createdDatetime": "2017-05-30T12:39:50+00:00","validUntilDatetime": "2017-05-30T12:40:20+00:00"}'
17+
18+
verify = Client('', http_client).verify('verify-id')
19+
20+
http_client.request.assert_called_once_with('verify/verify-id', 'GET', None)
21+
22+
self.assertEqual('verify-id', verify.id)
23+
24+
def test_verify_create(self):
25+
http_client = Mock()
26+
http_client.request.return_value = '{}'
27+
28+
Client('', http_client).verify_create('31612345678', {})
29+
30+
http_client.request.assert_called_once_with('verify', 'POST', {'recipient': '31612345678'})
31+
32+
def test_verify_verify(self):
33+
http_client = Mock()
34+
http_client.request.return_value = '{"id": "verify-id","href": "https://rest.messagebird.com/verify/verify-id","recipient": 31612345678,"reference": "MyReference","messages": {"href": "https://rest.messagebird.com/messages/63b168423592d681641eb07b76226648"},"status": "verified","createdDatetime": "2017-05-30T12:39:50+00:00","validUntilDatetime": "2017-05-30T12:40:20+00:00"}'
35+
36+
verify = Client('', http_client).verify_verify('verify-id', 'secret')
37+
38+
http_client.request.assert_called_once_with('verify/verify-id', 'GET', {'token': 'secret'})
39+
40+
self.assertEqual('verified', verify.status)

tests/test_voicemessage.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import unittest
2+
from messagebird import Client
3+
4+
try:
5+
from unittest.mock import Mock
6+
except ImportError:
7+
# mock was added to unittest in Python 3.3, but was an external library
8+
# before.
9+
from mock import Mock
10+
11+
12+
class TestVoicemessage(unittest.TestCase):
13+
14+
def test_voicemessage(self):
15+
http_client = Mock()
16+
http_client.request.return_value = '{"body": "Hello World","createdDatetime": "2015-01-05T16:11:24+00:00","href": "https://rest.messagebird.com/voicemessages/voicemessage-id","id": "voicemessage-id","ifMachine": "continue","language": "en-gb","originator": "MessageBird","recipients": {"items": [{"recipient": 31612345678,"status": "calling","statusDatetime": "2015-01-05T16:11:24+00:00"}],"totalCount": 1,"totalDeliveredCount": 0,"totalDeliveryFailedCount": 0,"totalSentCount": 1},"reference": null,"repeat": 1,"scheduledDatetime": null,"voice": "female"}'
17+
18+
voice_message = Client('', http_client).voice_message('voicemessage-id')
19+
20+
http_client.request.assert_called_once_with('voicemessages/voicemessage-id', 'GET', None)
21+
22+
self.assertEqual('voicemessage-id', voice_message.id)
23+
24+
def test_voicemessage_create(self):
25+
http_client = Mock()
26+
http_client.request.return_value = '{}'
27+
28+
Client('', http_client).voice_message_create(['31612345678', '31687654321'], 'Hello World', { 'reference': 'MyReference' })
29+
30+
http_client.request.assert_called_once_with('voicemessages', 'POST', {'body': 'Hello World', 'recipients': '31612345678,31687654321', 'reference': 'MyReference'})

0 commit comments

Comments
 (0)