222 |
222 |
</validation>
|
223 |
223 |
</field>
|
224 |
224 |
</fields>
|
225 |
225 |
</block>
|
226 |
226 |
'''
|
227 |
227 |
)
|
228 |
228 |
|
229 |
229 |
|
|
230 |
INTERVENTION_ID = json.loads(get_json_file('create_intervention'))['id']
|
|
231 |
|
|
232 |
|
230 |
233 |
@mock_response(
|
231 |
|
['/v1/intervention', None, get_json_file('get_intervention')],
|
|
234 |
['/v1/intervention', None, get_json_file('create_intervention')],
|
232 |
235 |
)
|
233 |
236 |
def test_get_intervention(app, smart):
|
234 |
|
resp = app.get(URL + 'get-intervention?id=3f0558bd-7d85-49a8-97e4-d07bc7f8dc9b')
|
|
237 |
resp = app.get(URL + 'get-intervention?id=%s' % INTERVENTION_ID)
|
235 |
238 |
assert not resp.json['err']
|
236 |
|
assert resp.json['data']['id'] == '3f0558bd-7d85-49a8-97e4-d07bc7f8dc9b'
|
|
239 |
assert resp.json['data']['id'] == INTERVENTION_ID
|
237 |
240 |
assert resp.json['data']['state'] == {
|
238 |
241 |
'id': 'e844e67f-5382-4c0f-94d8-56f618263485',
|
239 |
242 |
'table': None,
|
240 |
243 |
'stateLabel': 'Nouveau',
|
241 |
244 |
'closes': False,
|
242 |
245 |
}
|
243 |
246 |
|
244 |
247 |
|
245 |
248 |
@mock_response(
|
246 |
249 |
['/v1/intervention', None, None, 500],
|
247 |
250 |
)
|
248 |
251 |
def test_get_intervention_error_status(app, smart):
|
249 |
|
resp = app.get(URL + 'get-intervention?id=3f0558bd-7d85-49a8-97e4-d07bc7f8dc9b')
|
|
252 |
resp = app.get(URL + 'get-intervention?id=%s' % INTERVENTION_ID)
|
250 |
253 |
assert resp.json['err']
|
251 |
254 |
assert 'failed to get' in resp.json['err_desc']
|
252 |
255 |
|
253 |
256 |
|
254 |
257 |
@mock_response(
|
255 |
258 |
['/v1/intervention', None, None, 404],
|
256 |
259 |
)
|
257 |
260 |
def test_get_intervention_wrond_id(app, smart):
|
258 |
|
resp = app.get(URL + 'get-intervention?id=3f0558bd-7d85-49a8-97e4-d07bc7f8dc9b')
|
|
261 |
resp = app.get(URL + 'get-intervention?id=%s' % INTERVENTION_ID)
|
259 |
262 |
assert resp.json['err']
|
260 |
263 |
assert 'failed to get' in resp.json['err_desc']
|
261 |
264 |
assert '404' in resp.json['err_desc']
|
262 |
265 |
|
263 |
266 |
|
264 |
267 |
CREATE_INTERVENTION_PAYLOAD_EXTRA = {
|
265 |
268 |
'slug': 'coin',
|
266 |
269 |
'description': 'coin coin',
|
... | ... | |
672 |
675 |
[
|
673 |
676 |
'/api/forms/foo/2/hooks/update_intervention/',
|
674 |
677 |
UPDATE_INTERVENTION_QUERY_ON_ASYNC_CREATION,
|
675 |
678 |
WCS_RESPONSE_SUCCESS,
|
676 |
679 |
],
|
677 |
680 |
)
|
678 |
681 |
@mock.patch("django.db.models.fields.UUIDField.get_default", return_value=UUID)
|
679 |
682 |
def test_create_intervention_async(mocked_uuid4, app, smart, wcs_service):
|
680 |
|
smart_id = json.loads(get_json_file('create_intervention'))['id']
|
681 |
683 |
mocked_wcs_request_push = mock.patch(
|
682 |
684 |
"passerelle.contrib.toulouse_smart.models.WcsRequest.push",
|
683 |
685 |
return_value=False,
|
684 |
686 |
)
|
685 |
687 |
mocked_smart_request_push = mock.patch(
|
686 |
688 |
"passerelle.contrib.toulouse_smart.models.SmartRequest.push",
|
687 |
689 |
return_value=False,
|
688 |
690 |
)
|
... | ... | |
710 |
712 |
# smart is up
|
711 |
713 |
mocked_wcs_request_push.stop()
|
712 |
714 |
smart.jobs()
|
713 |
715 |
assert Job.objects.count() == 2
|
714 |
716 |
|
715 |
717 |
job = Job.objects.get(method_name='create_intervention_job')
|
716 |
718 |
assert job.status == 'completed'
|
717 |
719 |
wcs_request = smart.wcs_requests.get(uuid=UUID)
|
718 |
|
assert wcs_request.result['id'] == smart_id
|
|
720 |
assert wcs_request.result['id'] == INTERVENTION_ID
|
719 |
721 |
assert wcs_request.status == 'sent'
|
720 |
722 |
|
721 |
723 |
job = Job.objects.get(method_name='update_intervention_job')
|
722 |
724 |
assert job.status == 'registered'
|
723 |
725 |
|
724 |
726 |
# wcs is up
|
725 |
727 |
mocked_smart_request_push.stop()
|
726 |
728 |
smart.jobs()
|
727 |
729 |
|
728 |
730 |
job = Job.objects.get(method_name='update_intervention_job')
|
729 |
731 |
assert job.status == 'completed'
|
730 |
732 |
smart_request = wcs_request.smart_requests.get()
|
731 |
733 |
assert smart_request.payload['creation_response']['uuid'] == str(UUID)
|
732 |
|
assert smart_request.payload['creation_response']['result']['id'] == smart_id
|
|
734 |
assert smart_request.payload['creation_response']['result']['id'] == INTERVENTION_ID
|
733 |
|
-
|