api: exclude end_date in list booking endpoint (#61573)
This commit is contained in:
parent
ac41d09c94
commit
df4e9f8104
|
@ -2131,12 +2131,7 @@ class BookingFilter(filters.FilterSet):
|
|||
event = filters.CharFilter(method='filter_event')
|
||||
category = filters.CharFilter(field_name='event__agenda__category__slug', lookup_expr='exact')
|
||||
date_start = filters.DateFilter(field_name='event__start_datetime', lookup_expr='gte')
|
||||
date_end = filters.DateFilter(field_name='event__start_datetime', method='filter_date_end')
|
||||
|
||||
def filter_date_end(self, queryset, name, value):
|
||||
# we want to include all events starting during the targeted day
|
||||
lookup = '__'.join([name, 'lt'])
|
||||
return queryset.filter(**{lookup: value + datetime.timedelta(days=1)})
|
||||
date_end = filters.DateFilter(field_name='event__start_datetime', lookup_expr='lt')
|
||||
|
||||
def filter_event(self, queryset, name, value):
|
||||
# we want to include bookings of event recurrences
|
||||
|
|
|
@ -262,7 +262,7 @@ def test_bookings_api_filter_date_end(app, user):
|
|||
assert [b['id'] for b in resp.json['data']] == []
|
||||
resp = app.get('/api/bookings/', params={'user_external_id': '42', 'date_end': '2017-05-22'})
|
||||
assert resp.json['err'] == 0
|
||||
assert [b['id'] for b in resp.json['data']] == [booking.pk]
|
||||
assert [b['id'] for b in resp.json['data']] == []
|
||||
resp = app.get('/api/bookings/', params={'user_external_id': '42', 'date_end': '2017-05-23'})
|
||||
assert resp.json['err'] == 0
|
||||
assert [b['id'] for b in resp.json['data']] == [booking.pk]
|
||||
|
@ -274,7 +274,7 @@ def test_bookings_api_filter_date_end(app, user):
|
|||
assert [b['id'] for b in resp.json['data']] == []
|
||||
resp = app.get('/api/bookings/', params={'user_external_id': '42', 'date_end': '2017-05-22'})
|
||||
assert resp.json['err'] == 0
|
||||
assert [b['id'] for b in resp.json['data']] == [booking.pk]
|
||||
assert [b['id'] for b in resp.json['data']] == []
|
||||
resp = app.get('/api/bookings/', params={'user_external_id': '42', 'date_end': '2017-05-23'})
|
||||
assert resp.json['err'] == 0
|
||||
assert [b['id'] for b in resp.json['data']] == [booking.pk]
|
||||
|
|
Loading…
Reference in New Issue