Skip to content

Commit cc3b74b

Browse files
committed
Merge PR #138 into 19.0
Signed-off-by simahawk
2 parents 9e656c6 + f68a188 commit cc3b74b

2 files changed

Lines changed: 31 additions & 1 deletion

File tree

webservice/components/request_adapter.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,7 @@ def _fetch_new_token(self, old_token):
179179

180180
def _request(self, method, url=None, url_params=None, **kwargs):
181181
url = self._get_url(url=url, url_params=url_params)
182+
content_only = kwargs.pop("content_only", True)
182183
new_kwargs = kwargs.copy()
183184
new_kwargs.update(
184185
{
@@ -191,7 +192,9 @@ def _request(self, method, url=None, url_params=None, **kwargs):
191192
# pylint: disable=E8106
192193
request = session.request(method, url, **new_kwargs)
193194
request.raise_for_status()
194-
return request.content
195+
if content_only:
196+
return request.content
197+
return request
195198

196199

197200
class WebApplicationOAuth2RestRequestsAdapter(Component):

webservice/tests/test_oauth2.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,33 @@ def test_update_token_with_error(self):
148148
"old_token",
149149
)
150150

151+
@responses.activate
152+
def test_call_with_content_only_false_returns_response(self):
153+
now = time.time()
154+
duration = 3600
155+
responses.add(
156+
responses.POST,
157+
f"{self.url}oauth2/token",
158+
json={
159+
"access_token": "cool_token",
160+
"token_type": "Bearer",
161+
"expires_in": duration,
162+
"expires_at": now + duration,
163+
},
164+
)
165+
responses.add(responses.POST, f"{self.url}endpoint", json={"ok": True})
166+
167+
with mock_cursor(self.env.cr):
168+
response = self.webservice.call(
169+
"post",
170+
url=f"{self.url}endpoint",
171+
data="payload",
172+
content_only=False,
173+
)
174+
175+
self.assertEqual(response.status_code, 200)
176+
self.assertEqual(response.json(), {"ok": True})
177+
151178

152179
class TestWebServiceOauth2WebApplication(CommonWebService):
153180
@classmethod

0 commit comments

Comments
 (0)