Esempio n. 1
0
        public void InsertSingleNewTransaction_WithCombinationsOfStartAndTransactValues_ReturnsExpectedBalance(double startingValue, double transactionValue, double expectedValue)
        {
            // Arrange
            IBankAccountDailyBalances dailyBalances = new BankAccountDailyBalances(startingValue);
            FinancialTransactionDto   transaction   = new FinancialTransactionDto(DateTime.Parse("01/01/2020 00:00:00"), "Ledger", transactionValue, "Company");

            // Act
            dailyBalances.InsertSingleNewTransaction(transaction);

            // Assert
            dailyBalances.LastDailyEndingBalance.ShouldEqual(expectedValue);
        }
Esempio n. 2
0
        public void ForEach_SingleDailyBalance_EachDailyBalanceIsSeen()
        {
            // Arrange
            IBankAccountDailyBalances dailyBalances = new BankAccountDailyBalances(0.0);
            FinancialTransactionDto   transaction   = new FinancialTransactionDto(DateTime.Parse("01/01/2020 00:00:00"), "Ledger", 20.0, "Company");

            dailyBalances.InsertSingleNewTransaction(transaction);
            var             expectedBalances = dailyBalances.GetAllDailyBalances();
            List <DateTime> expectedDays     = new List <DateTime>();
            List <DateTime> visitedDays      = new List <DateTime>();

            dailyBalances.ForEach(dailyBalance => expectedDays.Add(dailyBalance.Date));

            // Act
            dailyBalances.ForEach(dailyBalance => visitedDays.Add(dailyBalance.Date));

            // Assert
            visitedDays.Count.ShouldEqual(expectedBalances.Count);
            expectedDays.ShouldEqual(visitedDays);
        }