api: include full URL in cancel_url and accept_url attributes (#17145)
This commit is contained in:
parent
20e20bda0b
commit
2907e4bb90
|
@ -249,12 +249,13 @@ class Fillslot(GenericAPIView):
|
|||
'booking_id': new_booking.id,
|
||||
'datetime': localtime(event.start_datetime),
|
||||
'api': {
|
||||
'cancel_url': reverse('api-cancel-booking', kwargs={'booking_pk': new_booking.id})
|
||||
'cancel_url': request.build_absolute_uri(
|
||||
reverse('api-cancel-booking', kwargs={'booking_pk': new_booking.id}))
|
||||
}
|
||||
}
|
||||
if new_booking.in_waiting_list:
|
||||
response['api']['accept_url'] = reverse('api-accept-booking',
|
||||
kwargs={'booking_pk': new_booking.id})
|
||||
response['api']['accept_url'] = request.build_absolute_uri(
|
||||
reverse('api-accept-booking', kwargs={'booking_pk': new_booking.id}))
|
||||
|
||||
return Response(response)
|
||||
|
||||
|
|
|
@ -250,6 +250,7 @@ def test_booking_api(app, some_data, user):
|
|||
assert resp.json['datetime'] == localtime(event.start_datetime).isoformat()
|
||||
assert 'accept_url' not in resp.json['api']
|
||||
assert 'cancel_url' in resp.json['api']
|
||||
assert urlparse.urlparse(resp.json['api']['cancel_url']).netloc
|
||||
assert Booking.objects.count() == 1
|
||||
|
||||
resp = app.post('/api/agenda/%s/fillslot/%s/' % (agenda.id, event.id))
|
||||
|
@ -491,6 +492,8 @@ def test_waiting_list_booking(app, some_data, user):
|
|||
assert resp.json['in_waiting_list'] is True
|
||||
assert 'accept_url' in resp.json['api']
|
||||
assert 'cancel_url' in resp.json['api']
|
||||
assert urlparse.urlparse(resp.json['api']['accept_url']).netloc
|
||||
assert urlparse.urlparse(resp.json['api']['cancel_url']).netloc
|
||||
|
||||
# cancel a booking that was not on the waiting list
|
||||
booking = Booking.objects.filter(event=event, in_waiting_list=False)[0]
|
||||
|
|
Loading…
Reference in New Issue