public void ShouldRenderAcceptedMessage() { var sut = new ApplicationStatus(); var model = new LoanApplication() { IsAccepted = true, }; HtmlDocument html = sut.RenderAsHtml(model); var isAcceptedMsgRenderd = html.GetElementbyId("acceptedMessage") != null; var isDeclinedMsgRenderd = html.GetElementbyId("declinedMessage") != null; Assert.That(isAcceptedMsgRenderd, Is.True); Assert.That(isDeclinedMsgRenderd, Is.False); }
public void ShouldRdirectToAcceptedViewOnUnSuccessfulApplication() { var fakeRepository = new Mock<IRepository>(); var fakeApplicationScorrer = new Mock<ILoanApplicationScorer>(); var sut = new LoanApplicationController(fakeRepository.Object, fakeApplicationScorrer.Object); var acceptedApplication = new LoanApplication { IsAccepted = false }; sut.WithCallTo(x => x.Apply(acceptedApplication)).ShouldRedirectTo<int>(x => x.Declined); }
public void ShouldPopulateIdOnCreateLoanApplication() { var sut = new Repository(); var appToSave = new LoanApplication() { LastName = "Mit", FirstName = "Philip", Age = 29, AnnualIncome = 1232312.22m }; sut.Create(appToSave); Assert.That(appToSave.ID, Is.Not.EqualTo(0)); }
public void ShouldPopulateIdOnCreateLoanApplication() { var sut = new Repository(); var applicationToSave = new LoanApplication { FirstName = "Gentry", LastName = "Smith", Age = 33, AnnualIncome = 12345.67m }; sut.Create(applicationToSave); Assert.That(applicationToSave.ID, Is.Not.EqualTo(0)); }
public void ShouldDeclineWhenTooYoung() { var fakeCreditHistoryChecker = new Mock<ICreditHistoryChecker>(); fakeCreditHistoryChecker.Setup( x => x.CheckCreditHistory(It.IsAny<string>(), It.IsAny<string>())) .Returns(true); var sut = new LoanApplicationScorer(fakeCreditHistoryChecker.Object); var application = new LoanApplication { Age = 21 }; sut.ScoreApplication(application); Assert.That(application.IsAccepted, Is.False); }
public void ShouldDeclineLoanApplication() { var applyPage = BrowserHost.Instance.NavigateToInitialPage<LoanApplicationController, LoanApplicationPage>( x => x.Apply()); var applicationDetails = new LoanApplication { FirstName = "Gentry", LastName = "Smith", Age = 16, AnnualIncome = 20000 }; var declinePage = applyPage.SubmitApplication<DeclinedPage>(applicationDetails); Assert.That(declinePage.DeclinedMessage, Is.EqualTo("Sorry Gentry - We are unable to offer you a loan at this time.")); DemoHelper.Wait(5000); }
public void ShouldDeclineWhenNotTooYoungAndWealthyButPoorCredit() { var fakeCreditHistoryChecker = new Mock<ICreditHistoryChecker>(); fakeCreditHistoryChecker.Setup( x => x.CheckCreditHistory(It.IsAny<string>(), It.IsAny<string>())) .Returns(false); var sut = new LoanApplicationScorer(fakeCreditHistoryChecker.Object); var application = new LoanApplication { AnnualIncome = 1000000.01m, Age = 22 }; sut.ScoreApplication(application); Assert.That(application.IsAccepted, Is.False); }
public void ShouldAcceptWhenYoungButWealthy() { var fakeCreditHistoryChecker = new Mock<ICreditHistoryChecker>(); fakeCreditHistoryChecker.Setup( x => x.CheckCreditHistory(It.IsAny<string>(), It.IsAny<string>())) .Returns(true); var sut = new LoanApplicationScorer(fakeCreditHistoryChecker.Object); var application = new LoanApplication { AnnualIncome = 1000000.01m, Age = 21 }; sut.ScoreApplication(application); Assert.That(application.IsAccepted, Is.True); }
public ActionResult Apply(LoanApplication application) { if (!ModelState.IsValid) { return View(application); } _scorer.ScoreApplication(application); _repository.Create(application); if (application.IsAccepted) { return RedirectToAction("Accepted", new { id = application.ID }); } else { return RedirectToAction("Declined", new { id = application.ID }); } }
public void ShouldAcceptLoanApplication() { var applyPage = BrowserHost.Instance.NavigateToInitialPage<LoanApplicationController, LoanApplicationPage>( x => x.Apply()); var applicationDetails = new LoanApplication { FirstName = "Gentry", LastName = "Smith", Age = 42, AnnualIncome = 999999999 }; var acceptPage = applyPage.SubmitApplication<AcceptedPage>(applicationDetails); var acceptMessageText = acceptPage.AcceptedMessage; Assert.That(acceptMessageText, Is.EqualTo("Congratulations Gentry - Your application was accepted!")); DemoHelper.Wait(5000); }