Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 7e73de1

Browse files
committed
Changed client tests so that the httplib2.http.request calls (with oauth2.Client) are mocked. Had issues with the oauth sandbox not being available and unit tests should not rely on external services.
1 parent c3625d9 commit 7e73de1

File tree

1 file changed

+26
-15
lines changed

1 file changed

+26
-15
lines changed

tests/test_oauth.py

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import urlparse
3434
from types import ListType
3535
import mock
36+
from mock import patch
3637
import httplib2
3738

3839
# Fix for python2.5 compatibility
@@ -1192,30 +1193,40 @@ class Blah():
11921193
self.fail("Client.__init__() accepted invalid Token.")
11931194
except ValueError:
11941195
pass
1195-
1196+
11961197
def test_access_token_get(self):
11971198
"""Test getting an access token via GET."""
1198-
client = oauth.Client(self.consumer, None)
1199-
resp, content = client.request(self._uri('request_token'), "GET")
1200-
1201-
self.assertEquals(int(resp['status']), 200)
1199+
1200+
with patch('httplib2.Http.request') as mockRequest:
1201+
1202+
mockRequest.return_value = {'status':200},''
1203+
client = oauth.Client(self.consumer, None)
1204+
resp, content = client.request(self._uri('request_token'), "GET")
1205+
self.assertEquals(int(resp['status']), 200)
12021206

12031207
def test_access_token_post(self):
1204-
"""Test getting an access token via POST."""
1205-
client = oauth.Client(self.consumer, None)
1206-
resp, content = client.request(self._uri('request_token'), "POST")
1208+
"""Test getting an access token via POST."""
12071209

1208-
self.assertEquals(int(resp['status']), 200)
1210+
with patch('httplib2.Http.request') as mockRequest:
1211+
1212+
mockRequest.return_value = {'status':200},'oauth_token=123&oauth_token_secret=abcd'
1213+
1214+
client = oauth.Client(self.consumer, None)
1215+
resp, content = client.request(self._uri('request_token'), "POST")
12091216

1210-
res = dict(parse_qsl(content))
1211-
self.assertTrue('oauth_token' in res)
1212-
self.assertTrue('oauth_token_secret' in res)
1217+
self.assertEquals(int(resp['status']), 200)
1218+
1219+
res = dict(parse_qsl(content))
1220+
self.assertTrue('oauth_token' in res)
1221+
self.assertTrue('oauth_token_secret' in res)
12131222

12141223
def _two_legged(self, method):
12151224
client = oauth.Client(self.consumer, None)
1216-
1217-
return client.request(self._uri('two_legged'), method,
1218-
body=urllib.urlencode(self.body))
1225+
with patch('httplib2.Http.request') as mockRequest:
1226+
1227+
mockRequest.return_value = {'status':200},''
1228+
return client.request(self._uri('two_legged'), method,
1229+
body=urllib.urlencode(self.body))
12191230

12201231
def test_two_legged_post(self):
12211232
"""A test of a two-legged OAuth POST request."""

0 commit comments

Comments
 (0)