0002-api-return-400-when-no-events-found-38333.patch
chrono/api/views.py | ||
---|---|---|
513 | 513 |
except ValueError: |
514 | 514 |
events = Event.objects.filter(slug__in=slots).order_by('start_datetime') |
515 | 515 | |
516 |
if not events.count(): |
|
517 |
return Response( |
|
518 |
{ |
|
519 |
'err': 1, |
|
520 |
'err_class': 'unkown event idenfiers or slug', |
|
521 |
'err_desc': _('unkown event idenfiers or slug'), |
|
522 |
}, status=status.HTTP_400_BAD_REQUEST |
|
523 |
) |
|
524 | ||
516 | 525 |
# search free places. Switch to waiting list if necessary. |
517 | 526 |
in_waiting_list = False |
518 | 527 |
for event in events: |
tests/test_api.py | ||
---|---|---|
573 | 573 |
# invalid slots format |
574 | 574 |
resp = app.post_json('/api/agenda/%s/fillslots/' % agenda.id, params={'slots': 'foobar'}, status=400) |
575 | 575 |
assert resp.json['err'] == 1 |
576 |
assert resp.json['reason'] == 'invalid payload' # legacy |
|
577 |
assert resp.json['err_class'] == 'invalid payload' |
|
578 |
assert resp.json['err_desc'] == 'invalid payload' |
|
579 |
assert len(resp.json['errors']) == 1 |
|
580 |
assert 'slots' in resp.json['errors'] |
|
576 |
assert resp.json['reason'] == 'unkown event idenfiers or slug' # legacy |
|
577 |
assert resp.json['err_class'] == 'unkown event idenfiers or slug' |
|
578 |
assert resp.json['err_desc'] == 'unkown event idenfiers or slug' |
|
581 | 579 | |
582 | 580 |
# unknown agendas |
583 | 581 |
resp = app.post('/api/agenda/foobar/fillslots/', status=404) |
584 |
- |