def test_receipt_add_product(self):
        toothbrush = Product("toothbrush", ProductUnit.EACH)
        apples = Product("apples", ProductUnit.KILO)
        receipt_toothbrush = ReceiptItem(toothbrush, 2, 1.5, 3)

        receipt = Receipt()
        receipt.discount = []
        receipt._items = [receipt_toothbrush]
        self.assertEqual(1, len(receipt._items))

        receipt.add_product(apples, 2, 1, 2)
        self.assertEqual(2, len(receipt._items))
    def test_receipt_add_discount(self):
        toothbrush = Product("toothbrush", ProductUnit.EACH)
        receipt_toothbrush = ReceiptItem(toothbrush, 2, 1.5, 3)

        discount = Discount(toothbrush, "test", 1.5)

        receipt = Receipt()
        receipt._items = [receipt_toothbrush]
        self.assertEqual(0, len(receipt._discounts))

        receipt.add_discount(discount)
        self.assertEqual(1, len(receipt._discounts))
        self.assertEqual(discount, receipt._discounts[0])