mirror of
https://github.com/pretix/pretix.git
synced 2026-05-03 14:54:04 +00:00
Disable shop and waiting list after end of event
This commit is contained in:
@@ -1020,6 +1020,38 @@ class EventTest(TestCase):
|
||||
assert event2.checkin_lists.count() == 1
|
||||
assert [i.pk for i in event2.checkin_lists.first().limit_products.all()] == [i1new.pk]
|
||||
|
||||
def test_presale_has_ended(self):
|
||||
event = Event(
|
||||
organizer=self.organizer, name='Download', slug='download',
|
||||
date_from=now()
|
||||
)
|
||||
assert not event.presale_has_ended
|
||||
assert event.presale_is_running
|
||||
|
||||
event.date_from = now().replace(hour=23, minute=59, second=59)
|
||||
assert not event.presale_has_ended
|
||||
assert event.presale_is_running
|
||||
|
||||
event.date_from = now() - timedelta(days=1)
|
||||
assert event.presale_has_ended
|
||||
assert not event.presale_is_running
|
||||
|
||||
event.date_to = now() + timedelta(days=1)
|
||||
assert not event.presale_has_ended
|
||||
assert event.presale_is_running
|
||||
|
||||
event.date_to = now() - timedelta(days=1)
|
||||
assert event.presale_has_ended
|
||||
assert not event.presale_is_running
|
||||
|
||||
event.presale_end = now() + timedelta(days=1)
|
||||
assert not event.presale_has_ended
|
||||
assert event.presale_is_running
|
||||
|
||||
event.presale_end = now() - timedelta(days=1)
|
||||
assert event.presale_has_ended
|
||||
assert not event.presale_is_running
|
||||
|
||||
|
||||
class SubEventTest(TestCase):
|
||||
@classmethod
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
from datetime import timedelta
|
||||
|
||||
from django.core import mail as djmail
|
||||
from django.test import TestCase
|
||||
from django.utils.timezone import now
|
||||
@@ -115,6 +117,21 @@ class WaitingListTestCase(TestCase):
|
||||
assert WaitingListEntry.objects.filter(voucher__isnull=True).count() == 10
|
||||
assert Voucher.objects.count() == 10
|
||||
|
||||
def test_send_periodic_event_over(self):
|
||||
self.event.settings.set('waiting_list_enabled', True)
|
||||
self.event.settings.set('waiting_list_auto', True)
|
||||
self.event.presale_end = now() - timedelta(days=1)
|
||||
self.event.save()
|
||||
for i in range(5):
|
||||
WaitingListEntry.objects.create(
|
||||
event=self.event, item=self.item2, variation=self.var1, email='foo{}@bar.com'.format(i)
|
||||
)
|
||||
process_waitinglist(None)
|
||||
assert WaitingListEntry.objects.filter(voucher__isnull=True).count() == 5
|
||||
assert Voucher.objects.count() == 0
|
||||
self.event.presale_end = now() + timedelta(days=1)
|
||||
self.event.save()
|
||||
|
||||
def test_send_periodic(self):
|
||||
self.event.settings.set('waiting_list_enabled', True)
|
||||
self.event.settings.set('waiting_list_auto', True)
|
||||
|
||||
Reference in New Issue
Block a user