0001-api_entreprise-add-include_private-parameter-41417.patch
passerelle/apps/api_entreprise/models.py | ||
---|---|---|
288 | 288 |
'object': OBJECT_PARAM, |
289 | 289 |
'context': CONTEXT_PARAM, |
290 | 290 |
'recipient': RECIPIENT_PARAM, |
291 |
'include_private': { |
|
292 |
'description': _('Include private informations'), |
|
293 |
'example_value': 'true' |
|
294 |
} |
|
291 | 295 |
}) |
292 |
def entreprises(self, request, siren, **kwargs): |
|
296 |
def entreprises(self, request, siren, include_private=False, **kwargs): |
|
297 |
if include_private: |
|
298 |
kwargs['non_diffusables'] = True |
|
293 | 299 |
return self.get('entreprises/%s/' % siren, **kwargs) |
294 | 300 | |
295 | 301 |
@endpoint(perm='can_access', |
tests/test_api_entreprise.py | ||
---|---|---|
410 | 410 |
assert data['etablissement_siege']['date_mise_a_jour'] == '2015-12-03' |
411 | 411 | |
412 | 412 | |
413 |
def test_entreprises_endpoint_include_private(app, resource, mock_api_entreprise, monkeypatch): |
|
414 |
get = mock.Mock(return_value={}) |
|
415 |
monkeypatch.setattr(resource.__class__, 'get', get) |
|
416 |
request_params = REQUEST_PARAMS.copy() |
|
417 | ||
418 |
app.get('/api-entreprise/test/entreprises/443170139/', params=request_params) |
|
419 |
assert 'non_diffusables' not in get.mock_calls[0].kwargs |
|
420 | ||
421 |
request_params['include_private'] = True |
|
422 |
app.get('/api-entreprise/test/entreprises/443170139/', params=request_params) |
|
423 |
assert get.mock_calls[1].kwargs['non_diffusables'] is True |
|
424 | ||
425 | ||
413 | 426 |
def test_etablissements_endpoint(app, resource, mock_api_entreprise): |
414 | 427 |
response = app.get('/api-entreprise/test/etablissements/44317013900036/', |
415 | 428 |
params=REQUEST_PARAMS) |
416 |
- |