api: do not crash on unknown agenda (with integer identifier) (#15066)

This commit is contained in:
Frédéric Péters 2017-06-09 20:03:21 +02:00
parent 7abcd52464
commit d46adc81c0
2 changed files with 4 additions and 2 deletions

View File

@ -58,7 +58,7 @@ class Datetimes(GenericAPIView):
try:
# legacy access by agenda id
agenda = Agenda.objects.get(id=int(agenda_identifier))
except ValueError:
except (ValueError, Agenda.DoesNotExist):
raise Http404()
if agenda.kind != 'events':
raise Http404('agenda found, but it was not an events agenda')
@ -198,7 +198,7 @@ class Fillslot(GenericAPIView):
try:
# legacy access by agenda id
agenda = Agenda.objects.get(id=int(agenda_identifier))
except ValueError:
except (ValueError, Agenda.DoesNotExist):
raise Http404()
if agenda.kind == 'meetings':

View File

@ -254,6 +254,8 @@ def test_booking_api(app, some_data, user):
resp = app.post('/api/agenda/foobar/fillslot/%s/' % event.id, status=404)
resp = app.post('/api/agenda/233/fillslot/%s/' % event.id, status=404)
def test_booking_api_meeting(app, meetings_agenda, user):
agenda_id = meetings_agenda.slug
meeting_type = MeetingType.objects.get(agenda=meetings_agenda)