Skip to content

Commit 3fdd4e5

Browse files
author
Matt Bernier
authored
Merge pull request #54 from StephenOrJames/codeclimate-fixes
Fix code style issues
2 parents c2243fd + 276b2e6 commit 3fdd4e5

File tree

6 files changed

+44
-27
lines changed

6 files changed

+44
-27
lines changed

examples/live_sendgrid_example.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,4 +66,3 @@
6666
response = client.api_keys._(api_key_id).delete()
6767
print(response.status_code)
6868
print(response.headers)
69-

python_http_client/__init__.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,3 @@
1313
ServiceUnavailableError,
1414
GatewayTimeoutError
1515
)
16-

python_http_client/client.py

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,8 @@ def _build_url(self, query_params):
117117
if query_params:
118118
url_values = urlencode(sorted(query_params.items()), True)
119119
url = '{0}?{1}'.format(url, url_values)
120-
url = self._build_versioned_url(url) if self._version else self.host + url
120+
url = (self._build_versioned_url(url) if self._version
121+
else self.host + url)
121122
return url
122123

123124
def _update_headers(self, request_headers):
@@ -207,21 +208,24 @@ def http_request(*_, **kwargs):
207208
if 'request_body' not in kwargs:
208209
data = None
209210
else:
210-
# Don't serialize to a JSON formatted str if we don't have a JSON Content-Type
211-
if 'Content-Type' in self.request_headers:
212-
if self.request_headers['Content-Type'] != 'application/json':
213-
data = kwargs['request_body'].encode('utf-8')
211+
# Don't serialize to a JSON formatted str if
212+
# we don't have a JSON Content-Type
213+
content_type = self.request_headers.get('Content-Type')
214+
if content_type is not None:
215+
if content_type != 'application/json':
216+
data = kwargs['request_body']
214217
else:
215-
data = json.dumps(kwargs['request_body']).encode('utf-8')
218+
data = json.dumps(kwargs['request_body'])
216219
else:
217-
data = json.dumps(kwargs['request_body']).encode('utf-8')
218-
params = kwargs['query_params'] if 'query_params' in kwargs else None
220+
data = json.dumps(kwargs['request_body'])
221+
data = data.encode('utf-8')
222+
params = kwargs.get('query_params')
219223
opener = urllib.build_opener()
220224
request = urllib.Request(self._build_url(params), data=data)
221225
if self.request_headers:
222226
for key, value in self.request_headers.items():
223227
request.add_header(key, value)
224-
if data and not ('Content-Type' in self.request_headers):
228+
if data and ('Content-Type' not in self.request_headers):
225229
request.add_header('Content-Type', 'application/json')
226230
request.get_method = lambda: method
227231
return Response(self._make_request(opener, request))

register.py

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,23 @@
11
import pypandoc
22
import os
33

4+
45
output = pypandoc.convert('README.md', 'rst')
5-
f = open('README.txt','w+')
6-
f.write(output)
7-
f.close()
8-
9-
readme_rst = open('./README.txt').read()
10-
replace = '[SendGrid Logo]\n(https://uiux.s3.amazonaws.com/2016-logos/email-logo%402x.png)'
11-
replacement = '|SendGrid Logo|\n\n.. |SendGrid Logo| image:: https://uiux.s3.amazonaws.com/2016-logos/email-logo%402x.png\n :target: https://www.sendgrid.com'
12-
final_text = readme_rst.replace(replace,replacement)
6+
7+
with open('README.txt', 'w+') as f:
8+
f.write(output)
9+
10+
with open('./README.txt') as f:
11+
readme_rst = f.read()
12+
13+
replace = ('[SendGrid Logo]\n'
14+
'(https://uiux.s3.amazonaws.com/2016-logos/email-logo%402x.png)')
15+
16+
replacement = ('|SendGrid Logo|\n\n.. |SendGrid Logo| image:: '
17+
'https://uiux.s3.amazonaws.com/2016-logos/email-logo%402x.png'
18+
'\n :target: https://www.sendgrid.com')
19+
20+
final_text = readme_rst.replace(replace, replacement)
21+
1322
with open('./README.txt', 'w') as f:
14-
f.write(final_text)
23+
f.write(final_text)

setup.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,19 @@
22
import os
33
from setuptools import setup
44

5+
56
long_description = 'Please see our GitHub README'
67
if os.path.exists('README.txt'):
78
long_description = open('README.txt').read()
89

10+
911
def getRequires():
1012
deps = []
1113
if (2, 6) <= sys.version_info < (2, 7):
1214
deps.append('unittest2')
1315
return deps
1416

17+
1518
base_url = 'https://github.com/sendgrid/'
1619
version = '3.0.0'
1720
setup(

tests/test_unit.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,12 @@
3131

3232

3333
class MockException(HTTPError):
34-
def __init__(self,code):
34+
35+
def __init__(self, code):
3536
self.code = code
3637
self.reason = 'REASON'
3738
self.hdrs = 'HEADERS'
39+
3840
def read(self):
3941
return 'BODY'
4042

@@ -61,18 +63,18 @@ def __init__(self, host, response_code):
6163
Client.__init__(self, host)
6264

6365
def _make_request(self, opener, request):
64-
if 200 <= self.response_code <299: # if successsful code
66+
if 200 <= self.response_code < 299: # if successsful code
6567
return MockResponse(self.response_code)
6668
else:
6769
raise handle_error(MockException(self.response_code))
6870

6971

70-
7172
class TestClient(unittest.TestCase):
73+
7274
def setUp(self):
7375
self.host = 'http://api.test.com'
7476
self.client = Client(host=self.host)
75-
self.api_key = "SENDGRID_API_KEY"
77+
self.api_key = 'SENDGRID_API_KEY'
7678
self.request_headers = {
7779
'Content-Type': 'application/json',
7880
'Authorization': 'Bearer ' + self.api_key
@@ -113,9 +115,10 @@ def test__build_url(self):
113115
self.client._url_path = self.client._url_path + ['there']
114116
self.client._url_path = self.client._url_path + [1]
115117
self.client._version = 3
116-
url = '{0}/v{1}{2}'.format(self.host,
117-
str(self.client._version),
118-
'/here/there/1?hello=0&world=1&ztest=0&ztest=1')
118+
url = '{0}/v{1}{2}'.format(
119+
self.host,
120+
str(self.client._version),
121+
'/here/there/1?hello=0&world=1&ztest=0&ztest=1')
119122
query_params = {'hello': 0, 'world': 1, 'ztest': [0,1]}
120123
built_url = self.client._build_url(query_params)
121124
self.assertEqual(built_url, url)

0 commit comments

Comments
 (0)