Projet

Général

Profil

0001-astregs-retreive-association-label-on-linking-36898.patch

Serghei Mihai (congés, retour 15/05), 15 octobre 2019 09:34

Télécharger (3,55 ko)

Voir les différences:

Subject: [PATCH] astregs: retreive association label on linking (#36898)

 passerelle/apps/astregs/models.py |  1 +
 tests/test_astregs.py             | 16 ++++++++++++++--
 2 files changed, 15 insertions(+), 2 deletions(-)
passerelle/apps/astregs/models.py
427 427
    def link(self, request, NameID, association_id):
428 428
        link, created = Link.objects.get_or_create(resource=self, name_id=NameID,
429 429
                                                   association_id=association_id)
430
        link.get_label()
430 431
        return {'link': link.id, 'created': created, 'association_id': link.association_id}
431 432

  
432 433

  
tests/test_astregs.py
171 171

  
172 172
@mock.patch('passerelle.utils.Request.get', side_effect=search_wsdl_side_effect)
173 173
@mock.patch('passerelle.utils.Request.post', side_effect=contact_search_side_effect)
174
def test_link_user_to_association(mocked_post, mocked_get, client, connector, app):
174
def test_link_user_to_association(mocked_post, mocked_get, client, recherche_tiers_details_wsdl,
175
                                  recherche_tiers_details_result, connector, app):
175 176
    assert Link.objects.count() == 0
176 177
    resp = app.get('/astregs/test/get-association-link-means', params={'association_id': '42'})
177 178
    assert len(resp.json['data']) == 2
179
    mocked_get.side_effect = None
180
    mocked_post.side_effect = None
181
    mocked_get.return_value = mock.Mock(content=recherche_tiers_details_wsdl)
182
    mocked_post.return_value = mock.Mock(content=recherche_tiers_details_result, status_code=200,
183
                                         headers={'Content-Type': 'text/xml'})
178 184
    resp = app.get('/astregs/test/link', params={'association_id': '42', 'NameID': 'user_name_id'})
179 185
    assert Link.objects.filter(name_id='user_name_id', association_id='42').count() == 1
180 186
    link = Link.objects.get(name_id='user_name_id', association_id='42')
......
187 193

  
188 194
@mock.patch('passerelle.utils.Request.get', side_effect=search_wsdl_side_effect)
189 195
@mock.patch('passerelle.utils.Request.post', side_effect=contact_search_side_effect)
190
def test_unlink_user_from_association(mocked_post, mocked_get, connector, app):
196
def test_unlink_user_from_association(mocked_post, mocked_get, connector, recherche_tiers_details_wsdl,
197
                                      recherche_tiers_details_result, app):
191 198
    resp = app.get('/astregs/test/get-association-link-means', params={'association_id': '42'})
199
    mocked_get.side_effect = None
200
    mocked_post.side_effect = None
201
    mocked_get.return_value = mock.Mock(content=recherche_tiers_details_wsdl)
202
    mocked_post.return_value = mock.Mock(content=recherche_tiers_details_result, status_code=200,
203
                                         headers={'Content-Type': 'text/xml'})
192 204
    resp = app.get('/astregs/test/link', params={'association_id': '42', 'NameID': 'user_name_id'})
193 205
    resp = app.get('/astregs/test/unlink', params={'NameID': 'user_name_id', 'association_id': '42'})
194 206
    assert resp.json['deleted']
195
-