From 9d30034754e110a3967073b10f9c8bc259c64fd7 Mon Sep 17 00:00:00 2001 From: Richard Schreiber Date: Mon, 20 Jun 2022 11:54:33 +0200 Subject: [PATCH] Fix: refresh from DB after API-patch-operations --- src/pretix/base/services/orders.py | 1 + src/tests/api/test_order_change.py | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/pretix/base/services/orders.py b/src/pretix/base/services/orders.py index 79ab143c26..cdbaf007ee 100644 --- a/src/pretix/base/services/orders.py +++ b/src/pretix/base/services/orders.py @@ -2317,6 +2317,7 @@ class OrderChangeManager: self._check_and_lock_memberships() try: self._perform_operations() + self.order.refresh_from_db() except TaxRule.SaleNotAllowed: raise OrderError(self.error_messages['tax_rule_country_blocked']) self._recalculate_total_and_payment_fee() diff --git a/src/tests/api/test_order_change.py b/src/tests/api/test_order_change.py index d15f36a400..7b4877f1b5 100644 --- a/src/tests/api/test_order_change.py +++ b/src/tests/api/test_order_change.py @@ -1673,6 +1673,8 @@ def test_order_change_patch(token_client, organizer, event, order, quota): assert p.item == item2 f.refresh_from_db() assert f.value == Decimal('10.00') + order.refresh_from_db() + assert order.total == Decimal('109.44') @pytest.mark.django_db