Skip to content

Commit f5ab0a9

Browse files
committed
Fix get_converter to delete converter in kwargs
It doesn't matter if converter is populate in kwargs to requests but it's more elegant and simplify tests
1 parent 1b310d3 commit f5ab0a9

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

github3/handlers/base.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ def _prefix_resource(self, resource):
5353
prefix = getattr(self, 'prefix', '')
5454
return '/'.join((prefix, str(resource))).strip('/')
5555

56-
def _get_converter(self, **kwargs):
57-
converter = kwargs.get(
56+
def _get_converter(self, kwargs={}):
57+
converter = kwargs.pop(
5858
'converter', # 1. in kwargs
5959
getattr(self, 'converter', # 2. in handler
6060
Modelizer)) # 3. Default
@@ -91,11 +91,11 @@ def _get_resources(self, resource, model=None, limit=None, **kwargs):
9191
if limit:
9292
limit = abs(limit)
9393
resource = self._prefix_resource(resource)
94+
converter = self._get_converter(kwargs)
9495
counter = 1
9596
for page in Paginate(resource, self._gh.get, **kwargs):
9697
for raw_resource in page:
9798
counter += 1
98-
converter = self._get_converter(**kwargs)
9999
converter.inject(model)
100100
yield converter.loads(raw_resource)
101101
if limit and counter > limit:
@@ -108,8 +108,8 @@ def _get_resource(self, resource, model=None, **kwargs):
108108
""" Handler request to single resource """
109109

110110
resource = self._prefix_resource(resource)
111-
raw_resource = self._gh.get(resource)
112-
converter = self._get_converter(**kwargs)
111+
converter = self._get_converter(kwargs)
112+
raw_resource = self._gh.get(resource, **kwargs)
113113
converter.inject(model)
114114
return converter.loads(raw_resource)
115115

@@ -118,6 +118,6 @@ def _post_resource(self, resource, data, model=None, **kwargs):
118118

119119
resource = self._prefix_resource(resource)
120120
raw_resource = self._gh.post(resource, data=data)
121-
converter = self._get_converter(**kwargs)
121+
converter = self._get_converter(kwargs)
122122
converter.inject(model)
123123
return converter.loads(raw_resource)

github3/tests/handler_test.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,10 @@ def setUp(self):
4343

4444
def test_get_converter(self):
4545
self.assertIsInstance(self.handler._get_converter(), Modelizer)
46-
self.assertIsInstance(self.handler._get_converter(converter=Rawlizer),
46+
kwargs = {'converter': Rawlizer}
47+
self.assertIsInstance(self.handler._get_converter(kwargs),
4748
Rawlizer)
49+
self.assertEquals(kwargs, {})
4850
self.handler.converter = Modelizer
4951
self.assertIsInstance(self.handler._get_converter(), Modelizer)
5052

0 commit comments

Comments
 (0)