public void Stores_a_deposit_transaction()
        {
            account.Deposit(1000.00m);

            transactionsStore.HasSavedNew(
                ATransaction
                .On(ADate)
                .For(1000.00m));
        }
        public void Stores_a_withdrawal_transaction()
        {
            account.Withdrawal(1000.00m);

            transactionsStore.HasSavedNew(
                ATransaction
                .On(ADate)
                .For(-1000.00m));
        }
        public void Prints_a_statement_containing_all_transactions()
        {
            transactionsStore.HasStoredTransactions(
                ATransaction
                .On(ADate)
                .For(1000.00m),
                ATransaction
                .On(ADate)
                .For(-200.00m));

            account.PrintStatement();

            console.HasWroteLinesInOrderOf(
                "DATE | AMOUNT | BALANCE",
                "05/09/2018 | -200.00 | 800.00",
                "05/09/2018 | 1000.00 | 1000.00");
        }
        public void Returns_transactions_in_the_same_order_they_were_saved()
        {
            var depositTransaction = ATransaction
                                     .On(DepositTransactionDate)
                                     .For(1000.0m)
                                     .Build();
            var withdrawalTransaction = ATransaction
                                        .On(WithdrawalTransactionDate)
                                        .For(-200.00m)
                                        .Build();
            var trasactionsStore = new InMemoryTransactionsStore();

            trasactionsStore.SaveNew(depositTransaction);
            trasactionsStore.SaveNew(withdrawalTransaction);

            var allTransactions = trasactionsStore.All;

            Check.That(allTransactions)
            .ContainsExactly(depositTransaction, withdrawalTransaction);
        }
Exemple #5
0
 public void Send(ATransaction transaction)
 {
     Send(transaction.BankAccount.PhoneNo, transaction.ToString());
 }
 public DepositeCommand(ATransaction transaction)
 {
     this.transaction = transaction;
 }
 public WithdrawCommand(ATransaction transaction)
 {
     this.transaction = transaction;
 }
 public BillPaymentCommand(ATransaction transaction)
 {
     this.transaction = transaction;
 }