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)
Exemple #3
0
    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)
Exemple #4
0
    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)
Exemple #5
0
    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)
Exemple #6
0
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
Exemple #7
0
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())
Exemple #10
0
 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)
Exemple #11
0
 def test_total_zero_when_new_instance_made(self):
     new_cash_desk = CashDesk()
     self.assertEqual(0, new_cash_desk.total())
Exemple #12
0
 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())