Пример #1
0
 def setUp(self):
     super(TestCountCondition, self).setUp()
     self.condition = models.CountCondition(range=self.range,
                                            type="Count",
                                            value=2)
     self.offer = mock.Mock()
     self.offer.applies_to_tax_exclusive_prices = False
Пример #2
0
 def setUp(self):
     self.range = models.Range.objects.create(
         name="All products range", includes_all_products=True)
     self.basket = factories.create_basket(empty=True)
     self.condition = models.CountCondition(
         range=self.range, type="Count", value=2)
     self.offer = mock.Mock()
 def setUp(self):
     range = models.Range.objects.create(name="All products",
                                         includes_all_products=True)
     self.condition = models.CountCondition(range=range,
                                            type=models.Condition.COUNT,
                                            value=2)
     self.benefit = models.PercentageDiscountBenefit(
         range=range, type=models.Benefit.PERCENTAGE, value=20)
     self.offer = mock.Mock()
     self.basket = factories.create_basket(empty=True)
 def setUp(self):
     range = models.Range(name="All products", includes_all_products=True)
     condition = models.CountCondition(range=range,
                                       type=models.Condition.COUNT,
                                       value=3)
     benefit = models.PercentageDiscountBenefit(
         range=range,
         type=models.Benefit.PERCENTAGE,
         value=20,
         max_affected_items=1)
     self.offer = models.ConditionalOffer(
         name="Test",
         offer_type=models.ConditionalOffer.SITE,
         condition=condition,
         benefit=benefit)
 def setUp(self):
     range = models.Range.objects.create(name="All products",
                                         includes_all_products=True)
     self.condition = models.CountCondition(range=range,
                                            type=models.Condition.COUNT,
                                            value=2)
     self.benefit = models.PercentageDiscountBenefit(
         range=range,
         type=models.Benefit.PERCENTAGE,
         value=20,
         max_affected_items=1)
     self.offer = models.ConditionalOffer(
         offer_type=models.ConditionalOffer.SITE,
         condition=self.condition,
         benefit=self.benefit)
     self.basket = factories.create_basket(empty=True)
Пример #6
0
    def test_count_condition_is_applied_multpile_times(self):
        benefit = models.AbsoluteDiscountBenefit(range=self.range,
                                                 type="Absolute",
                                                 value=Decimal('10.00'))
        for i in range(10):
            self.basket.add_product(
                create_product(price=Decimal('5.00'), upc='upc_%i' % i), 1)
        product_range = models.Range.objects.create(name="All products",
                                                    includes_all_products=True)
        condition = models.CountCondition(range=product_range,
                                          type="Count",
                                          value=2)

        first_discount = benefit.apply(self.basket, condition=condition)
        self.assertEquals(Decimal('10.00'), first_discount)

        second_discount = benefit.apply(self.basket, condition=condition)
        self.assertEquals(Decimal('10.00'), second_discount)
Пример #7
0
 def setUp(self):
     super(TestCountCondition, self).setUp()
     self.condition = models.CountCondition(
         range=self.range, type="Count", value=2)
     self.offer = mock.Mock()
Пример #8
0
def count_condition(range_all):
    return models.CountCondition(range=range_all, type="Count", value=2)