def test_receipt_total_price(self): toothbrush = Product("toothbrush", ProductUnit.EACH) apples = Product("apples", ProductUnit.KILO) toothbrush_discount = Discount(toothbrush, "my_description", 0.2) receipt_toothbrush = ReceiptItem(toothbrush, 2, 1.5, 3) receipt_apples = ReceiptItem(apples, 3, 1, 3) receipt = Receipt() receipt.discounts = [toothbrush_discount] receipt.items = [receipt_toothbrush, receipt_apples] totalprice = receipt.total_price() self.assertEqual([toothbrush_discount], receipt.discounts) self.assertEqual(5.8, totalprice)
def test_shopping_handle_offers_no_offers(self): catalog = FakeCatalog() toothbrush = Product("toothbrush", ProductUnit.EACH) receipt_toothbrush = ReceiptItem(toothbrush, 2, 1.5, 3) receipt = Receipt() receipt.items = [receipt_toothbrush] receipt_offers = {} cart = ShoppingCart() cart._items = [toothbrush] cart._product_quantities = {toothbrush: 2} cart.handle_offers(receipt, receipt_offers, catalog) self.assertEqual([], receipt.discounts)