public void GetAllLoanApplications_ShouldReturnAllLoanApplications()
 {
     _context.LoanApplications.Add(LoanApplicationModelFactory.CreateBasicModelWithDecision());
     _context.LoanApplications.Add(LoanApplicationModelFactory.CreateBasicModelWithDecision());
     _context.LoanApplications.Add(LoanApplicationModelFactory.CreateBasicModelWithDecision());
     _context.SaveChanges();
     _target.GetAllLoanApplications().Count().Should().Be(3);
 }
Example #2
0
        public void CreateLoanApplication_ShouldReturnIdOfAddedModel()
        {
            const int id         = 123;
            var       model      = LoanApplicationModelFactory.CreateBasicModel().WithId(id);
            var       newModelId = _target.CreateLoanApplication(model);

            newModelId.Should().Be(id);
        }
        public void TakeDecision_ShouldApproveIfMonthlyIncomeIsGood()
        {
            var model  = LoanApplicationModelFactory.CreateModelWithIncome(31001);
            var target = new StandardDecisionTaker();
            var result = target.TakeDecision(model);

            result.Decision.Should().BeTrue();
        }
        public void TakeDecision_ShouldDenyIfMonthlyIncomeIsToLow()
        {
            var model  = LoanApplicationModelFactory.CreateModelWithIncome(31000);
            var target = new StandardDecisionTaker();
            var result = target.TakeDecision(model);

            result.Decision.Should().BeFalse();
        }
Example #5
0
        public void GetApplication_ShouldReturnModelOrNull()
        {
            const int id    = 123;
            var       model = LoanApplicationModelFactory.CreateBasicModel().WithId(id);

            _fakeLoanApplicationContextFacade.LoanApplicationModels.Add(model);
            _target.GetApplication(id).Should().NotBeNull();
            _target.GetApplication(123123).Should().BeNull();
        }
Example #6
0
        public void CreateLoanApplication_ShouldSetDecision()
        {
            const int id           = 123;
            var       model        = LoanApplicationModelFactory.CreateBasicModel();
            var       newModelId   = _target.CreateLoanApplication(model);
            var       createdModel = _fakeLoanApplicationContextFacade.LoanApplicationModels.SingleOrDefault(x => x.Id == newModelId);

            createdModel.Should().NotBeNull();
            createdModel.Decision.Should().NotBeNull();
        }
Example #7
0
        public void GetLoanApplicationDecision_ShouldReturnDecision()
        {
            var model = LoanApplicationModelFactory.CreateBasicModelWithDecision().WithId(123);

            _fakeLoanApplicationContextFacade.LoanApplicationModels.Add(model);
            var result = _target.GetApplicationDecision(123);

            result.Should().NotBeNull();
            result.Decision.Should().BeFalse();
        }
Example #8
0
        public void UpdateLoanApplication_ShouldReturnIdOfUpdatedModel()
        {
            const int id      = 123;
            var       dbModel = LoanApplicationModelFactory.CreateBasicModelWithDecision().WithId(id);

            _fakeLoanApplicationContextFacade.LoanApplicationModels.Add(dbModel);
            var model      = LoanApplicationModelFactory.CreateBasicModel().WithId(id);
            var newModelId = _target.UpdateLoanApplication(model);

            newModelId.Should().Be(id);
        }
Example #9
0
        public void DeleteLoanApplication_ShouldReturnTrueIfDeleteWorked()
        {
            const int idToDelete = 123;
            var       model      = LoanApplicationModelFactory.CreateBasicModel().WithId(idToDelete);

            _fakeLoanApplicationContextFacade.LoanApplicationModels.Add(model);
            _fakeLoanApplicationContextFacade.LoanApplicationModels.Count().Should()
            .Be(1);
            _target.DeleteLoanApplication(idToDelete).Should().BeTrue();
            _fakeLoanApplicationContextFacade.LoanApplicationModels.Count().Should()
            .Be(0);
        }
Example #10
0
        public void UpdateLoanApplication_ShouldSetDecision()
        {
            const int id      = 123;
            var       dbModel = LoanApplicationModelFactory.CreateBasicModelWithDecision().WithId(id);

            _fakeLoanApplicationContextFacade.LoanApplicationModels.Add(dbModel);
            var model = LoanApplicationModelFactory.CreateBasicModel().WithId(id);

            _target.UpdateLoanApplication(model);
            var createdModel = _fakeLoanApplicationContextFacade.LoanApplicationModels.SingleOrDefault(x => x.Id == id);

            createdModel.Should().NotBeNull();
            createdModel.Decision.Should().NotBeNull();
        }