Added 'lettre_type' param to 'get_courrier()' endpoint

This commit is contained in:
Michael Bideau 2019-07-29 14:35:56 +02:00
parent d4080dae85
commit 4fc61d5f5e
2 changed files with 10 additions and 7 deletions

View File

@ -702,7 +702,8 @@ class AtrealOpenads(BaseResource, HTTPResource):
example_pattern='{type_dossier}/',
parameters={
'type_dossier' : {'description': _("Type of 'dossier'") , 'example_value': 'DIA'},
'numero_dossier': {'description': _("Identifier for 'dossier'"), 'example_value': 'DIA0130551900001'}
'numero_dossier': {'description': _("Identifier for 'dossier'"), 'example_value': 'DIA0130551900001'},
'lettre_type' : {'description': _("Courrier ID to get"), 'example_value': 'dia_renonciation_preempter'}
},
#~ get={
#~ 'description': _("Get a 'courrier' from an openADS 'dossier'"),
@ -713,12 +714,12 @@ class AtrealOpenads(BaseResource, HTTPResource):
#~ }
#~ }
)
def get_courrier(self, request, type_dossier, numero_dossier):
def get_courrier(self, request, type_dossier, numero_dossier, lettre_type):
# make a request to openADS.API
url = urlparse.urljoin(
self.openADS_API_url,
'/dossier/%s/%s/courrier/%s' % (type_dossier, numero_dossier, 'dia_renonciation_preempter'))
'/dossier/%s/%s/courrier/%s' % (type_dossier, numero_dossier, lettre_type))
response = self.requests.get(url)
# response is an error

View File

@ -607,6 +607,8 @@ def test_openads_get_fwd_files_status(app, atreal_openads):
def test_openads_get_courrier(app, atreal_openads):
lettre_type = 'dia_renonciation_preempter'
fake_resp_bad = Response()
fake_resp_bad.status_code = 502
fake_resp_bad.reason = 'Bad gateway'
@ -614,7 +616,7 @@ def test_openads_get_courrier(app, atreal_openads):
with pytest.raises(APIError) as e:
with mock.patch('passerelle.utils.Request.get') as requests_get:
requests_get.return_value = fake_resp_bad
atreal_openads.get_courrier(None, 'DIA', FAKE_NUMERO_DOSSIER)
atreal_openads.get_courrier(None, 'DIA', FAKE_NUMERO_DOSSIER, lettre_type)
assert unicode(e.value) == "HTTP error: 502"
fake_resp_json = {
@ -632,7 +634,7 @@ def test_openads_get_courrier(app, atreal_openads):
fake_resp._content = json.dumps(fake_resp_json)
with mock.patch('passerelle.utils.Request.get') as requests_get:
requests_get.return_value = fake_resp
jresp = atreal_openads.get_courrier(None, 'DIA', FAKE_NUMERO_DOSSIER)
jresp = atreal_openads.get_courrier(None, 'DIA', FAKE_NUMERO_DOSSIER, lettre_type)
assert jresp['courrier']['filename'] == fake_resp_json['files'][0]['filename']
assert jresp['courrier']['content_type'] == fake_resp_json['files'][0]['content_type']
assert jresp['courrier']['b64_content'] == fake_resp_json['files'][0]['b64_content']
@ -642,14 +644,14 @@ def test_openads_get_courrier(app, atreal_openads):
with pytest.raises(APIError) as e:
with mock.patch('passerelle.utils.Request.get') as requests_get:
requests_get.return_value = fake_resp
atreal_openads.get_courrier(None, 'DIA', FAKE_NUMERO_DOSSIER)
atreal_openads.get_courrier(None, 'DIA', FAKE_NUMERO_DOSSIER, lettre_type)
assert unicode(e.value) == u'Failed to decode courrier content from base 64'
fake_resp._content = 'df[{gfd;g#vfd'
with pytest.raises(APIError) as e:
with mock.patch('passerelle.utils.Request.get') as requests_get:
requests_get.return_value = fake_resp
atreal_openads.get_courrier(None, 'DIA', FAKE_NUMERO_DOSSIER)
atreal_openads.get_courrier(None, 'DIA', FAKE_NUMERO_DOSSIER, lettre_type)
assert unicode(e.value) == u'No JSON content returned: %r' % fake_resp._content