Пример #1
0
        public void IsOverdraftAlgorithm_Detects_Overdrafts()
        {
            int expectedCount = 1;
            int actualCount   = 0;

            // -----
            // ARRANGE
            Builder.LoadDataScenario(UnitOfWork, DataScenarios.Default);
            Builder.LoadDataScenario(UnitOfWork, DataScenarios.Overdrafts);

            var algorithm = new IsOverdraftAlgorithm();
            var entities  = UnitOfWork.BankAccounts.GetAll().ToList();

            // -----
            // ACT
            entities.ForEach(e => {
                IAlgorithmResult calculation = algorithm.Calculate(e.Balance);

                if (calculation.Result)
                {
                    actualCount++;
                }
            });

            // -----
            // ASSERT
            Assert.AreEqual(expectedCount, actualCount);
        }
Пример #2
0
        public void BankAccountApplication_Detects_NoOverdrafts()
        {
            int expectedCount = 0;
            int actualCount   = 0;

            // -----
            // ARRANGE
            Builder.LoadDataScenario(UnitOfWork, DataScenarios.Default);

            var algorithm   = new IsOverdraftAlgorithm();
            var application = Builder.CreateInstance <BankAccountApplication>(UnitOfWork);

            // -----
            // ACT
            var entities = application.FindOverdrafts(algorithm);

            actualCount = entities.Count();

            // -----
            // ASSERT
            Assert.AreEqual(expectedCount, actualCount);
        }