Ignore event end date for subevents

This commit is contained in:
Raphael Michel
2018-02-07 13:51:22 +01:00
parent c53fd25d1c
commit ded539ce7a
5 changed files with 39 additions and 2 deletions

View File

@@ -218,6 +218,21 @@ class CartTest(CartTestMixin, TestCase):
objs = list(CartPosition.objects.filter(cart_id=self.session_key, event=self.event))
self.assertEqual(len(objs), 0)
def test_subevent_ignore_series_date(self):
self.event.has_subevents = True
self.event.date_to = now() - timedelta(days=1)
self.event.save()
se = self.event.subevents.create(name='Foo', date_from=now(), active=True,
presale_end=now() + timedelta(days=1))
q = se.quotas.create(name="foo", size=None, event=self.event)
q.items.add(self.ticket)
self.client.post('/%s/%s/cart/add' % (self.orga.slug, self.event.slug), {
'item_%d' % self.ticket.id: '1',
'subevent': se.pk
}, follow=False)
objs = list(CartPosition.objects.filter(cart_id=self.session_key, event=self.event))
self.assertEqual(len(objs), 1)
def test_subevent_sale_over(self):
self.event.has_subevents = True
self.event.save()

View File

@@ -1401,3 +1401,18 @@ class CheckoutTestCase(TestCase):
self.assertGreaterEqual(len(doc.select(".alert-danger")), 1)
assert 'presale period for one of the events in your cart has ended.' in response.rendered_content
assert not CartPosition.objects.filter(cart_id=self.session_key).exists()
def test_confirm_subevent_ignore_series_dates(self):
self.event.has_subevents = True
self.event.date_to = now() - datetime.timedelta(days=1)
self.event.save()
se = self.event.subevents.create(name='Foo', date_from=now(), presale_end=now() + datetime.timedelta(days=1))
CartPosition.objects.create(
event=self.event, cart_id=self.session_key, item=self.ticket,
price=23, expires=now() + timedelta(minutes=10), subevent=se
)
self._set_session('payment', 'banktransfer')
response = self.client.post('/%s/%s/checkout/confirm/' % (self.orga.slug, self.event.slug), follow=True)
doc = BeautifulSoup(response.rendered_content, "lxml")
self.assertEqual(len(doc.select(".thank-you")), 1)