api: export waiting list status (#12700)

This commit is contained in:
Frédéric Péters 2016-07-22 13:41:23 +02:00
parent 198d5b56a8
commit b7d097dd7b
2 changed files with 13 additions and 0 deletions

View File

@ -165,6 +165,10 @@ class SlotStatus(GenericAPIView):
'available': event.places - event.booked_places,
}
}
if event.waiting_list_places:
response['places']['waiting_list_total'] = event.waiting_list_places
response['places']['waiting_list_reserved'] = event.waiting_list
response['places']['waiting_list_available'] = (event.waiting_list_places - event.waiting_list)
return Response(response)
slot_status = SlotStatus.as_view()

View File

@ -165,6 +165,15 @@ def test_status(app, some_data, user):
assert resp.json['places']['total'] == 10
assert resp.json['places']['available'] == 9
assert resp.json['places']['reserved'] == 1
assert not 'waiting_list_total' in resp.json['places']
Booking(event=event, in_waiting_list=True).save()
event.waiting_list_places = 5
event.save()
resp = app.get('/api/agenda/%s/status/%s/' % (agenda_id, event.id))
assert resp.json['places']['waiting_list_total'] == 5
assert resp.json['places']['waiting_list_available'] == 4
assert resp.json['places']['waiting_list_reserved'] == 1
def test_waiting_list_datetimes(app, some_data, user):
agenda_id = Agenda.objects.filter(label=u'Foo bar')[0].id