Test case for issue #68
This commit is contained in:
parent
75d96ce1c1
commit
8e1f799513
1 changed files with 27 additions and 0 deletions
|
@ -6,6 +6,7 @@ from registrasion.models import commerce
|
|||
from registrasion.models import conditions
|
||||
from registrasion.controllers.category import CategoryController
|
||||
from controller_helpers import TestingCartController
|
||||
from controller_helpers import TestingInvoiceController
|
||||
from registrasion.controllers.product import ProductController
|
||||
|
||||
from test_cart import RegistrationCartTestCase
|
||||
|
@ -350,3 +351,29 @@ class FlagTestCases(RegistrationCartTestCase):
|
|||
# and also PROD_1, which is now exhausted for user.
|
||||
items = commerce.ProductItem.objects.filter(cart=cart.cart)
|
||||
self.assertTrue([i for i in items if i.product == self.PROD_1])
|
||||
|
||||
def test_oops(self):
|
||||
''' Flags should be enabled, even if *some* enabling products are cnx.
|
||||
Tests issue #68.
|
||||
'''
|
||||
|
||||
self.add_product_flag()
|
||||
cart1 = TestingCartController.for_user(self.USER_1)
|
||||
|
||||
with self.assertRaises(ValidationError):
|
||||
# Can't do this without PROD_2
|
||||
cart1.add_to_cart(self.PROD_1, 1)
|
||||
|
||||
cart1.add_to_cart(self.PROD_2, 1)
|
||||
|
||||
inv = TestingInvoiceController.for_cart(cart1.cart)
|
||||
inv.pay("Lol", inv.invoice.value)
|
||||
|
||||
cart2 = TestingCartController.for_user(self.USER_1)
|
||||
cart2.add_to_cart(self.PROD_2, 1)
|
||||
|
||||
inv.refund()
|
||||
|
||||
# Even though cart1 has been cancelled, we have the item in cart2.
|
||||
# So we should be able to add PROD_1, which depends on PROD_2
|
||||
cart2.add_to_cart(self.PROD_1, 1)
|
||||
|
|
Loading…
Reference in a new issue