def test_calculate_discount_unknown_discount(self):

        pricer = BasketPricer(self.basket, self.catalogue, self.offers)

        with self.assertRaises(Exception):
            self.assertEqual(2.0,
                             pricer._calculate_discount("Corona Vaccine", 1))
    def test_calculate_discount_buyXgetY(self):

        pricer = BasketPricer(self.basket, self.catalogue, self.offers)

        self.assertEqual(2.0, pricer._calculate_discount("Shampoo", 4))
    def test_calculate_discount_percentage(self):

        pricer = BasketPricer(self.basket, self.catalogue, self.offers)

        self.assertEqual(0.95, pricer._calculate_discount("Sardines", 2))