From dadc4463fc87a6929dc7833fb6eac3673796d17c Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Mon, 15 Aug 2016 23:00:44 +0200 Subject: [PATCH] Added more tests for voucher redemption --- src/tests/presale/test_cart.py | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/tests/presale/test_cart.py b/src/tests/presale/test_cart.py index 5ea5d1350b..2aa5709562 100644 --- a/src/tests/presale/test_cart.py +++ b/src/tests/presale/test_cart.py @@ -27,9 +27,9 @@ class CartTestMixin: self.shirt = Item.objects.create(event=self.event, name='T-Shirt', category=self.category, default_price=12) self.quota_shirts.items.add(self.shirt) self.shirt_red = ItemVariation.objects.create(item=self.shirt, default_price=14, value='Red') - var2 = ItemVariation.objects.create(item=self.shirt, value='Blue') + self.shirt_blue = ItemVariation.objects.create(item=self.shirt, value='Blue') self.quota_shirts.variations.add(self.shirt_red) - self.quota_shirts.variations.add(var2) + self.quota_shirts.variations.add(self.shirt_blue) self.quota_tickets = Quota.objects.create(event=self.event, name='Tickets', size=5) self.ticket = Item.objects.create(event=self.event, name='Early-bird ticket', category=self.category, default_price=23) @@ -478,6 +478,22 @@ class CartTest(CartTestMixin, TestCase): objs = list(CartPosition.objects.filter(cart_id=self.session_key, event=self.event)) self.assertEqual(len(objs), 0) + def test_voucher_item_invalid_item(self): + v = Voucher.objects.create(item=self.shirt, event=self.event) + self.client.post('/%s/%s/cart/add' % (self.orga.slug, self.event.slug), { + 'item_%d_voucher' % self.ticket.id: v.code, + }, follow=True) + objs = list(CartPosition.objects.filter(cart_id=self.session_key, event=self.event)) + self.assertEqual(len(objs), 0) + + def test_voucher_item_invalid_variation(self): + v = Voucher.objects.create(item=self.shirt, variation=self.shirt_blue, event=self.event) + self.client.post('/%s/%s/cart/add' % (self.orga.slug, self.event.slug), { + 'variation_%d_%d_voucher' % (self.shirt.id, self.shirt_red.id): v.code, + }, follow=True) + objs = list(CartPosition.objects.filter(cart_id=self.session_key, event=self.event)) + self.assertEqual(len(objs), 0) + def test_voucher_price(self): v = Voucher.objects.create(item=self.ticket, price=Decimal('12.00'), event=self.event) self.client.post('/%s/%s/cart/add' % (self.orga.slug, self.event.slug), {