def test_cashdesk_take_only_bills(self): desk = CashDesk() desk.take_money(Bill(10)) desk.take_money(Bill(5)) self.assertEqual(desk.total(), 15)
def test_cashdesk_take_only_batch(self): desk = CashDesk() batch = BillBatch([Bill(10), Bill(5)]) desk.take_money(batch) self.assertEqual(desk.total(), 15)
def test_cashdesk_total_works_as_expected_when_bill_appears_more_than_once( self): cash_desk = CashDesk() bill1 = Bill(10) bill2 = Bill(10) bill3 = Bill(20) bill4 = Bill(20) cash_desk.take_money(bill1) cash_desk.take_money(bill2) cash_desk.take_money(bill3) cash_desk.take_money(bill4) self.assertEqual(cash_desk.total(), 60)
def test_total_amount_of_money_in_the_desk_with_bills(self): Bill.money_holder = {} a = Bill(10) b = Bill(20) c = Bill(30) desk = CashDesk() desk.take_money(a) desk.take_money(b) desk.take_money(c) total = desk.total() self.assertEqual(total, 60)
def test_total_amount_of_money_in_the_desk_with_bills_and_batches(self): Bill.money_holder = {} a = Bill(10) b = Bill(20) c = Bill(40) batch = BatchBill([a, b, c]) desk = CashDesk() desk.take_money(batch) desk.take_money(a) total = desk.total() self.assertEqual(total, 80)
from cashdesk import Bill, BillBatch, CashDesk values = [10, 20, 50, 100, 100, 100] bills = [Bill(value) for value in values] batch = BillBatch(bills) desk = CashDesk() desk.take_money(batch) desk.take_money(Bill(10)) print(desk.total()) # 390 desk.inspect() # We have a total of 390$ in the desk # We have the following count of bills, sorted in ascending order: # 10$ bills - 2 # 20$ bills - 1 # 50$ bills - 1 # 100$ bills - 3
from cashdesk import Bill, BillBatch, CashDesk values = [10, 20, 50, 100, 100, 100] bills = [Bill(value) for value in values] batch = BillBatch(bills) desk = CashDesk() desk.take_money(Bill(10)) desk.take_money(batch) print(desk.total()) # 390 desk.inspect() # We have a total of 390$ in the desk # We have the following count of bills, sorted in ascending order: # 10$ bills - 2 # 20$ bills - 1 # 50$ bills - 1 # 100$ bills - 3
def test_total_zero_when_new_instance_made(self): new_cash_desk = CashDesk() self.assertEqual(0, new_cash_desk.total())
def test_total_after_money_take(self): new_cash_desk = CashDesk() new_cash_desk.take_money({1: 2, 100: 3}) self.assertEqual(302, new_cash_desk.total())
def test_when_total_then_return_sum_of_amounts_of_all_bills_in_cashdesk( self): test_cashdesk = CashDesk() test_cashdesk.take_money(BillBatch([Bill(10), Bill(10), Bill(20)])) expected_result = 40 self.assertEqual(test_cashdesk.total(), expected_result)