def test_example(self): basket = FranciaBasket() receipt = Receipt() [basket.add_item(value) for value in self.value_input] basket.print_receipt(receipt) out = receipt.deliver().split('\n') i = 0 for value in self.value_output: self.assertEqual(value, out[i]) i += 1
def setUp(self): self.orders = [] self.tax = Decimal("0.0") self.total = Decimal("0.0") self.basket = FranciaBasket()
class TestBasketCommunicateWithReceiptCase(unittest.TestCase): def setUp(self): self.orders = [] self.tax = Decimal("0.0") self.total = Decimal("0.0") self.basket = FranciaBasket() def set_orders(self, orders): self.orders = orders def set_tax(self, tax): self.tax = tax def set_total(self, total): self.total = total def test_print_receipt_empty_basket(self): self.basket.print_receipt(self) self.assertEqual(0, len(self.orders)) self.assertEqual(Decimal('0.0'), self.tax) self.assertEqual(Decimal('0.0'), self.total) def test_print_receipt_two_no_taxed_items(self): self.basket.add_item('1 book at 10.02') self.basket.add_item('1 book at 10.08') self.basket.print_receipt(self) self.assertEqual(2, len(self.orders)) self.assertEqual(Decimal('0.0'), self.tax) self.assertEqual(Decimal('20.10'), self.total) def test_print_receipt_taxed_items(self): self.basket.add_item('1 music CD at 10.00') self.basket.add_item('1 music CD at 10.00') self.basket.print_receipt(self) self.assertEqual(Decimal('2.0'), self.tax) self.assertEqual(Decimal('22.0'), self.total) def test_basket_orders_are_safe(self): self.basket.print_receipt(self) self.orders.append('invalid item') self.assertNotEqual(len(self.basket.orders()), len(self.orders))