Exemple #1
0
        public void Accept()
        {
            var loanProduct     = new LoanProduct(1, "Loan", 8.35m);
            var loanAmount      = new LoanAmount("inr", 3500000);
            var loanApplication = new LoanApplication(1, loanProduct, loanAmount, "Vatan", 35, "Ekta Nagar", 100000);

            var mockIdentityVerifier = new Mock <IIdentityVerifier>();

            //mockIdentityVerifier.Setup(x => x.Validate("Vatan", 35, "Ekta Nagar")).Returns(true);

            //Setup for any type matching args
            mockIdentityVerifier.Setup(x => x.Validate(It.IsAny <string>(), It.IsAny <int>(), It.IsAny <string>())).Returns(true);

            //set below property hierarchy Autometically, Score is int
            //_creditScorer.ScoreResult.ScoreValue.Score

            //Below code set default values to hierarchy like 0 to Score
            var mockCreditScorer = new Mock <ICreditScorer>()
            {
                DefaultValue = DefaultValue.Mock
            };

            //below code set specific value
            mockCreditScorer.Setup(x => x.ScoreResult.ScoreValue.Score).Returns(300);

            var lap = new LoanApplicationProcessor(mockIdentityVerifier.Object, mockCreditScorer.Object);

            lap.Process(loanApplication);

            //It fails as LoanApplicationProcessor dont accept Null arguments.
            Assert.That(loanApplication.GetIsAccepted(), Is.True);
        }
Exemple #2
0
        public void DeclineLowSalary()
        {
            var loanProduct     = new LoanProduct(1, "Loan", 8.35m);
            var loanAmount      = new LoanAmount("inr", 3500000);
            var loanApplication = new LoanApplication(1, loanProduct, loanAmount, "Vatan", 35, "Ekta Nagar", 50000);

            var mockIdentityVerifier = new Mock <IIdentityVerifier>();
            var mockCreditScorer     = new Mock <ICreditScorer>();
            var lap = new LoanApplicationProcessor(mockIdentityVerifier.Object, mockCreditScorer.Object);

            lap.Process(loanApplication);

            //It fails as LoanApplicationProcessor dont accept Null arguments.
            Assert.That(loanApplication.GetIsAccepted(), Is.False);
        }