8000 Allow you to update/delete instances · thomas0708/twilio-python@a8da298 · GitHub
[go: up one dir, main page]

Skip to content

Commit a8da298

Browse files
author
Kevin Burke
committed
Allow you to update/delete instances
1 parent 87b02ce commit a8da298

File tree

7 files changed

+61
-14
lines changed

7 files changed

+61
-14
lines changed

tests/test_applications.py

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,32 @@
11
import unittest
22

3-
from mock import Mock
4-
from twilio.rest.resources import Applications
3+
from mock import Mock, patch
4+
5+
from twilio.rest.resources import Applications, Application
56

67

78
class ApplicationsTest(unittest.TestCase):
89
def setUp(self):
910
self.parent = Mock()
1011
self.resource = Applications("http://api.twilio.com", ("user", "pass"))
1112

12-
def test_create_appliation_sms_url_method(self):
13+
def test_create_application_sms_url_method(self):
1314
self.resource.create_instance = Mock()
1415
self.resource.create(sms_method="hey")
1516
self.resource.create_instance.assert_called_with({"sms_method": "hey"})
1617

17-
def test_create_appliation_sms_url(self):
18+
def test_create_application_sms_url(self):
1819
self.resource.create_instance = Mock()
1920
self.resource.create(sms_url="hey")
2021
self.resource.create_instance.assert_called_with({"sms_url": "hey"})
2122

22-
def test_update_appliation_sms_url_method(self):
23+
def test_update_application_sms_url_method(self):
2324
self.resource.update_instance = Mock()
2425
self.resource.update("123", sms_method="hey")
2526
self.resource.update_instance.assert_called_with(
2627
"123", {"sms_method": "hey"})
2728

28-
def test_update_appliation_sms_url(self):
29+
def test_update_application_sms_url(self):
2930
self.resource.update_instance = Mock()
3031
self.resource.update("123", sms_url="hey")
3132
self.resource.update_instance.assert_called_with(
@@ -52,3 +53,16 @@ def test_create(self):
5253

5354
uri = "http://api.twilio.com/Applications"
5455
request.assert_called_with("POST", uri, data={"FriendlyName": "hey"})
56+
57+
@patch("twilio.rest.resources.base.Resource.request")
58+
def test_delete(self, req):
59+
""" Deleting an application should work """
60+
resp = Mock()
61+
resp.content = ""
62+
resp.status_code = 204
63+
req.return_value = resp, {}
64+
65+
app = Application(self.resource, "AP123")
66+
app.delete()
67+
uri = "http://api.twilio.com/Applications/AP123"
68+
req.assert_called_with("DELETE", uri)

tests/test_transcriptions.py

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
from mock import patch
1+
from mock import patch, Mock
22
from nose.tools import raises
3-
from twilio.rest.resources import Transcriptions
3+
from twilio.rest.resources import Transcriptions, Transcription
44
from tools import create_mock_json
55

66
BASE_URI = "https://api.twilio.com/2010-04-01/Accounts/AC123"
@@ -32,6 +32,20 @@ def test_get(mock):
3232
mock.assert_called_with("GET", uri, auth=AUTH)
3333

3434

35+
@patch("twilio.rest.resources.base.Resource.request")
36+
def test_delete_transcription(req):
37+
""" Deleting a transcription should work """
38+
resp = Mock()
39+
resp.content = ""
40+
resp.status_code = 204
41+
req.return_value = resp, {}
42+
43+
app = Transcription(transcriptions, "TR123")
44+
app.delete()
45+
uri = "https://api.twilio.com/2010-04-01/Accounts/AC123/Transcriptions/TR123"
46+
req.assert_called_with("DELETE", uri)
47+
48+
3549
@raises(AttributeError)
3650
def test_create():
3751
transcriptions.create

tests/test_usage.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
from mock import patch
1+
from mock import patch, Mock
22
from nose.tools import raises
3+
34
from tools import create_mock_json
45
from twilio.rest.resources import Usage
6+
from twilio.rest.resources.usage import UsageTriggers, UsageTrigger
57

68
BASE_URI = "https://api.twilio.com/2010-04-01/Accounts/AC123"
79
ACCOUNT_SID = "AC123"
@@ -74,6 +76,20 @@ def test_records_paging(request):
7476
}, auth=AUTH)
7577

7678

79+
@patch("twilio.rest.resources.base.Resource.request")
80+
def test_delete_trigger(req):
81+
resp = Mock()
82+
resp.content = ""
83+
resp.status_code = 204
84+
req.return_value = resp, {}
85+
86+
triggers = UsageTriggers("https://api.twilio.com", None)
87+
trigger = UsageTrigger(triggers, "UT123")
88+
trigger.delete()
89+
uri = "https://api.twilio.com/Usage/Triggers/UT123"
90+
req.assert_called_with("DELETE", uri)
91+
92+
7793
@raises(AttributeError)
7894
def test_records_create():
7995
usage.records.all.create

twilio/rest/resources/applications.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ def update(self, **kwargs):
88
"""
99
Update this application
1010
"""
11-
return self.parent.update(self.sid, **kwargs)
11+
return self.parent.update(self.name, **kwargs)
1212

1313
def delete(self):
1414
"""
1515
Delete this application
1616
"""
17-
return self.parent.delete(self.sid)
17+
return self.parent.delete(self.name)
1818

1919

2020
class Applications(ListResource):

twilio/rest/resources/base.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,9 @@ def __init__(self, httplib_resp, content, url):
2929

3030
def get_cert_file():
3131
""" Get the cert file location or bail """
32+
# XXX - this currently fails test coverage because we don't actually go
33+
# over the network anywhere. Might be good to have a test that stands up a
34+
# local server and authenticates against it.
3235
try:
3336
# Apparently __file__ is not available in all places so wrapping this
3437
# in a try/catch

twilio/rest/resources/transcriptions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ def delete(self):
77
"""
88
Delete this transcription
99
"""
10-
return self.parent.delete(self.sid)
10+
return self.parent.delete(self.name)
1111

1212

1313
class Transcriptions(ListResource):

twilio/rest/resources/usage.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@ def update(self, **kwargs):
99
"""
1010
Update this usage trigger
1111
"""
12-
return self.parent.update(self.sid, **kwargs)
12+
return self.parent.update(self.name, **kwargs)
1313

1414
def delete(self):
1515
"""
1616
Delete this usage trigger
1717
"""
18-
return self.parent.delete(self.sid)
18+
return self.parent.delete(self.name)
1919

2020

2121
class UsageTriggers(ListResource):

0 commit comments

Comments
 (0)
0