From bb75b77162f1b8883a8ddf6301c9f36bd3970fa8 Mon Sep 17 00:00:00 2001 From: Felix Blanke <info@fblanke.de> Date: Fri, 28 Feb 2025 14:41:32 +0100 Subject: [PATCH] Prefetch in test and fix typing --- AKModel/availability/forms.py | 2 +- AKModel/tests/test_json_export.py | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/AKModel/availability/forms.py b/AKModel/availability/forms.py index 994949a8..24a7c4f0 100644 --- a/AKModel/availability/forms.py +++ b/AKModel/availability/forms.py @@ -183,7 +183,7 @@ class AvailabilitiesFormMixin(forms.Form): for avail in availabilities: setattr(avail, reference_name, instance.id) - def _replace_availabilities(self, instance, availabilities: [Availability]): + def _replace_availabilities(self, instance, availabilities: list[Availability]): """ Replace the existing list of availabilities belonging to an entity with a new, updated one diff --git a/AKModel/tests/test_json_export.py b/AKModel/tests/test_json_export.py index cbd37013..e8aac8fe 100644 --- a/AKModel/tests/test_json_export.py +++ b/AKModel/tests/test_json_export.py @@ -78,7 +78,13 @@ class JSONExportTest(TestCase): for participant in self.export_dict["participants"] } - self.ak_slots = AKSlot.objects.filter(event__slug=event.slug).all() + self.ak_slots = ( + AKSlot.objects.filter(event__slug=event.slug) + .select_related("ak") + .prefetch_related("ak__conflicts") + .prefetch_related("ak__prerequisites") + .all() + ) self.rooms = Room.objects.filter(event__slug=event.slug).all() self.slots_in_an_hour = 1 / self.export_dict["timeslots"]["info"]["duration"] self.event = event @@ -563,7 +569,7 @@ class JSONExportTest(TestCase): # test if time availability of room is restricted if not Availability.is_event_covered( - room.event, room.availabilities.all() + event, room.availabilities.all() ): time_constraints.add(f"availability-room-{room.pk}") -- GitLab