From 24c76baec2cf9c488d79d960b0bca538f88cd7a2 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Mon, 28 Sep 2015 23:18:52 +0200 Subject: [PATCH] Added tests for order expiry dates --- src/tests/base/test_orders.py | 44 +++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/tests/base/test_orders.py diff --git a/src/tests/base/test_orders.py b/src/tests/base/test_orders.py new file mode 100644 index 000000000..9d01cb046 --- /dev/null +++ b/src/tests/base/test_orders.py @@ -0,0 +1,44 @@ +from datetime import timedelta + +import pytest +from django.utils.timezone import now + +from pretix.base.models import Event, Organizer +from pretix.base.payment import FreeOrderProvider +from pretix.base.services.orders import place_order + + +@pytest.fixture +def event(): + o = Organizer.objects.create(name='Dummy', slug='dummy') + event = Event.objects.create( + organizer=o, name='Dummy', slug='dummy', + date_from=now() + ) + return event + + +@pytest.mark.django_db +def test_expiry_days(event): + today = now() + event.settings.set('payment_term_days', 5) + order = place_order(event, user=None, email='dummy@example.org', positions=[], + dt=today, payment_provider=FreeOrderProvider(event), + locale='de') + assert (order.expires - today).days == 5 + + +@pytest.mark.django_db +def test_expiry_last(event): + today = now() + event.settings.set('payment_term_days', 5) + event.settings.set('payment_term_last', now() + timedelta(days=3)) + order = place_order(event, user=None, email='dummy@example.org', positions=[], + dt=today, payment_provider=FreeOrderProvider(event), + locale='de') + assert (order.expires - today).days == 3 + event.settings.set('payment_term_last', now() + timedelta(days=7)) + order = place_order(event, user=None, email='dummy@example.org', positions=[], + dt=today, payment_provider=FreeOrderProvider(event), + locale='de') + assert (order.expires - today).days == 5