From 5db227090b2cbccfa6c6df68291ccae2c5b9fc7c Mon Sep 17 00:00:00 2001 From: Daniel Grams Date: Tue, 26 Oct 2021 23:09:08 +0200 Subject: [PATCH 1/2] Paging in Veranstaltungsliste nicht korrekt #316 --- project/services/event.py | 4 ++-- tests/services/test_event.py | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/project/services/event.py b/project/services/event.py index bbd2204..51b6cfc 100644 --- a/project/services/event.py +++ b/project/services/event.py @@ -291,8 +291,8 @@ def get_events_query(params): event_filter = and_(event_filter, Event.dates.any(date_filter)) return ( Event.query.join(Event.admin_unit) - .join(EventPlace, isouter=True) - .join(Location, isouter=True) + .join(Event.event_place, isouter=True) + .join(EventPlace.location, isouter=True) .options( contains_eager(Event.event_place).contains_eager(EventPlace.location), joinedload(Event.categories), diff --git a/tests/services/test_event.py b/tests/services/test_event.py index 40bace1..0e7394a 100644 --- a/tests/services/test_event.py +++ b/tests/services/test_event.py @@ -183,3 +183,21 @@ def test_get_recurring_events(client, seeder, app): assert len(recurring_events) == 1 assert recurring_events[0].id == event_id + + +def test_get_events_query(client, seeder, utils): + from project.services.event import get_events_query + from project.services.event_search import EventSearchParams + + _, admin_unit_id = seeder.setup_base() + seeder.create_event(admin_unit_id) + seeder.upsert_event_place(admin_unit_id, "Other Place") + + params = EventSearchParams() + params.admin_unit_id = admin_unit_id + params.can_read_private_events = True + + events = get_events_query(params) + pagination = events.paginate() + + assert pagination.total == 1 From 78c6a6842bb64bd81694bcab8fadb4374f1f8ecd Mon Sep 17 00:00:00 2001 From: Daniel Grams Date: Tue, 26 Oct 2021 23:50:08 +0200 Subject: [PATCH 2/2] Paging in Veranstaltungsliste nicht korrekt #316 --- tests/services/test_event.py | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/tests/services/test_event.py b/tests/services/test_event.py index 0e7394a..b230bdf 100644 --- a/tests/services/test_event.py +++ b/tests/services/test_event.py @@ -185,19 +185,20 @@ def test_get_recurring_events(client, seeder, app): assert recurring_events[0].id == event_id -def test_get_events_query(client, seeder, utils): - from project.services.event import get_events_query - from project.services.event_search import EventSearchParams - +def test_get_events_query(client, seeder, app): _, admin_unit_id = seeder.setup_base() seeder.create_event(admin_unit_id) seeder.upsert_event_place(admin_unit_id, "Other Place") - params = EventSearchParams() - params.admin_unit_id = admin_unit_id - params.can_read_private_events = True + with app.app_context(): + from project.services.event import get_events_query + from project.services.event_search import EventSearchParams - events = get_events_query(params) - pagination = events.paginate() + params = EventSearchParams() + params.admin_unit_id = admin_unit_id + params.can_read_private_events = True - assert pagination.total == 1 + events = get_events_query(params) + pagination = events.paginate() + + assert pagination.total == 1