Projet

Général

Profil

0001-api_entreprise-add-include_private-parameter-41417.patch

Emmanuel Cazenave, 07 avril 2020 14:58

Télécharger (2,4 ko)

Voir les différences:

Subject: [PATCH] api_entreprise: add 'include_private' parameter (#41417)

 passerelle/apps/api_entreprise/models.py |  8 +++++++-
 tests/test_api_entreprise.py             | 13 +++++++++++++
 2 files changed, 20 insertions(+), 1 deletion(-)
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
-