public void GetTest()
        {
            MortgageController _MortgageController = new MortgageController();
            var res = _MortgageController.Get();

            Assert.AreNotEqual(null, res);
        }
        public void MortgageControllerExists()
        {
            var mockRepository = new Mock <IMortgageService>();
            var controller     = new MortgageController(mockRepository.Object);

            Assert.IsInstanceOf(typeof(MortgageController), controller);
        }
        public void Initialize()
        {
            _mortgageServiceMock = new Mock <IMortgageService>();
            _objController       = new MortgageController(_mortgageServiceMock.Object);


            _listMortgages = new List <Mortgage>()
            {
                new Mortgage()
                {
                    MortgageId = 1, Name = "Test", MortgageType = MortgageType.Fixed, InterestRepayment = InterestRepayment.InterestOnly, EffectiveStartDate = DateTime.Now.AddDays(-365), EffectiveEndDate = DateTime.Now, TermsInMonths = 12, CancellationFee = 0, EstablishmentFee = 1000, InterestRate = 13.5M
                },
                new Mortgage()
                {
                    MortgageId = 2, Name = "TestOne", MortgageType = MortgageType.Variable, InterestRepayment = InterestRepayment.InterestOnly, EffectiveStartDate = DateTime.Now.AddDays(-365), EffectiveEndDate = DateTime.Now, TermsInMonths = 12, CancellationFee = 0, EstablishmentFee = 1000, InterestRate = 13.5M
                },
            };


            _mortgage = new Mortgage()
            {
                MortgageId         = 1,
                Name               = "Test",
                MortgageType       = MortgageType.Fixed,
                InterestRepayment  = InterestRepayment.InterestOnly,
                EffectiveStartDate = DateTime.Now.AddDays(-365),
                EffectiveEndDate   = DateTime.Now,
                TermsInMonths      = 12,
                CancellationFee    = 0,
                EstablishmentFee   = 1000,
                InterestRate       = 13.5M
            };
        }
Exemple #4
0
        public void InterestRates_ReturnsRatesList()
        {
            var service    = new MortgageServiceMock();
            var controller = new MortgageController(service);
            var response   = controller.InterestRates();

            Assert.True(response != null || response !.Count() == 2);
        }
Exemple #5
0
        public void GetMortgageById_ValidTest()
        {
            var mortgage   = mortgageService.Get(5);
            var controller = new MortgageController();
            var result     = controller.Get(5);

            Assert.AreEqual(mortgage.Name, result.Name);
        }
Exemple #6
0
        public void GetMortgageById_InValidTest()
        {
            var mortgage   = mortgageService.Get(0);
            var controller = new MortgageController();
            var result     = controller.Get(5);

            Assert.AreNotEqual(mortgage, result);
        }
Exemple #7
0
        public void GetMortgageDropDownList_ValidTest()
        {
            var mortgage   = mortgageService.GetMortgageDropDownList();
            var controller = new MortgageController();
            var result     = controller.GetMortgageDropDownList() as List <Dto.MortgageDropDownList>;

            Assert.AreEqual(mortgage.Count, result.Count);
        }
        public void GetbyIdTest()
        {
            MortgageController _MortgageController            = new MortgageController();
            IEnumerable <MortgageCalculator.Dto.Mortgage> res = _MortgageController.Get();
            var res2 = _MortgageController.Get(res.FirstOrDefault().MortgageId);

            Assert.AreNotEqual(null, res);
            Assert.AreNotEqual(null, res2);
        }
        public void GetMortgagesTest_Returns_Mortgages()
        {
            List <Dto.Mortgage> Mortgagelist = new List <Dto.Mortgage>();

            _mortageApiProvider.GetMortgages().Returns(Mortgagelist);
            var        controller = new MortgageController(_mortageApiProvider);
            ViewResult viewResult = controller.GetListofMortgages() as ViewResult;

            Assert.AreEqual(Mortgagelist, viewResult.Model);
        }
Exemple #10
0
        public void GetAllMortgages_ValidTest()
        {
            var mortgageList = mortgageService.GetAllMortgages();
            var controller   = new MortgageController();

            var result = controller.Get() as List <Dto.Mortgage>;


            Assert.AreEqual(mortgageList.Count, result.Count);
        }
        public void GetLoanRepaymentDetails_Returns_LoanDetails()
        {
            LoanDetails loanDetails = new LoanDetails();

            _mortageApiProvider.GetLoanRepaymentDetails(loanDetails).Returns(loanDetails);
            var controller = new MortgageController(_mortageApiProvider);
            PartialViewResult viewResult = controller.GetLoanRepaymentDetails(loanDetails) as PartialViewResult;

            Assert.AreEqual(loanDetails, viewResult.Model);
        }
        public void MortgageControllerGetMortgageByIdShouldReturnOKWithNotFound()
        {
            var mockRepository = new Mock <IMortgageService>();

            var controller = new MortgageController(mockRepository.Object);

            IHttpActionResult actionResult = controller.Get(12312112);

            Assert.IsInstanceOf(typeof(NotFoundResult), actionResult);
        }
        public void GetMortgagesTest_Returns_View()
        {
            List <Dto.Mortgage> Mortgagelist = new List <Dto.Mortgage>();

            _mortageApiProvider.GetMortgages().Returns(Mortgagelist);
            var        controller = new MortgageController(_mortageApiProvider);
            ViewResult viewResult = controller.GetListofMortgages() as ViewResult;

            Assert.That(viewResult, Is.Not.Null, "Controller returned view");
            Assert.IsNotNull(viewResult);
        }
Exemple #14
0
        public void MortgageCheck_ReturnsFeasibilityAndMonthlyCost()
        {
            var service    = new MortgageServiceMock();
            var controller = new MortgageController(service);
            var response   = controller.MortgageCheck(new MortgageCheckApiModel {
                MaturityPeriod = 1
            }) as ObjectResult;

            Assert.NotNull(response);
            Assert.True(response.StatusCode == StatusCodes.Status200OK);
            Assert.NotNull(response.Value as MortgageCheckViewModel);
        }
Exemple #15
0
        public void MortgageCheck_Returns404IfNoSuchMaturityPeriod()
        {
            var service    = new MortgageServiceMock();
            var controller = new MortgageController(service);
            var response   = controller.MortgageCheck(new MortgageCheckApiModel
            {
                MaturityPeriod = 99
            }) as ObjectResult;

            Assert.NotNull(response);
            Assert.True(response.StatusCode == StatusCodes.Status404NotFound);
        }
Exemple #16
0
        public void It_Should_Get_Successfull_Response_After_Successfull_Add_Calculation_Entry()
        {
            //Arrange
            var expectedResult = new CustomJsonModel
            {
                Success = true,
            };
            MortgageController controller = new MortgageController(mortageServiceMock.Object);

            //Act
            var        controllerResult = controller.AddCalculationEntry(_mortgageEntry);
            CustomJson jsonResult       = controllerResult as CustomJson;

            //Assert
            Assert.AreEqual(expectedResult.Success, jsonResult.Data.Success);
        }
Exemple #17
0
        public void It_Should_Get_Successfull_Response_And_Message_After_Successfull_Email_Sent()
        {
            //Arrange
            var expectedResult = new CustomJsonModel {
                Success = true,
                Message = "Email sent successfully"
            };
            MortgageController controller = new MortgageController(mortageServiceMock.Object);

            //Act
            var        controllerResult = controller.SendMail(_mortgageEntry, _email);
            CustomJson jsonResult       = controllerResult as CustomJson;

            //Assert
            Assert.AreEqual(expectedResult.Success, jsonResult.Data.Success);
            Assert.AreEqual(expectedResult.Message, jsonResult.Data.Message);
        }
Exemple #18
0
        public void It_Should_Get_Successfull_Response_And_History_List_After_Successfull_Get_Entry_List()
        {
            //Arrange
            var expectedResult = new CustomJsonModel
            {
                Success = true,
                History = entryList
            };
            MortgageController controller = new MortgageController(mortageServiceMock.Object);

            //Act
            var        controllerResult = controller.GetHistoryList();
            CustomJson jsonResult       = controllerResult as CustomJson;

            //Assert
            Assert.AreEqual(expectedResult.Success, jsonResult.Data.Success);
            Assert.AreEqual(expectedResult.History.Count(), jsonResult.Data.History.Count());
        }
Exemple #19
0
        public void It_Should_Get_Successfull_Response_And_Clean_History_List_After_Get_Entry_List_With_No_Entries()
        {
            //Arrange
            var expectedResult = new CustomJsonModel
            {
                Success = true,
                History = new List <MortgageEntry>()
            };

            mortageServiceMock.Setup(service => service.GetHistory()).Returns(new List <MortgageEntry>());
            MortgageController controller = new MortgageController(mortageServiceMock.Object);

            //Act
            var        controllerResult = controller.GetHistoryList();
            CustomJson jsonResult       = controllerResult as CustomJson;

            //Assert
            Assert.AreEqual(expectedResult.Success, jsonResult.Data.Success);
            Assert.AreEqual(expectedResult.History.Count(), jsonResult.Data.History.Count());
        }
Exemple #20
0
        public void It_Should_Get_Not_Successfull_Message_And_Response_After_Failed_Email_Sent()
        {
            //Arrange
            var expectedResult = new CustomJsonModel
            {
                Success = false,
                Message = "There was an error when processing your request. Please try again"
            };

            mortageServiceMock.Setup(service => service.SendEmail(_mortgageEntry, _email)).Returns(false);
            MortgageController controller = new MortgageController(mortageServiceMock.Object);

            //Act
            var        controllerResult = controller.SendMail(_mortgageEntry, _email);
            CustomJson jsonResult       = controllerResult as CustomJson;

            //Assert
            Assert.AreEqual(expectedResult.Message, jsonResult.Data.Message);
            Assert.AreEqual(expectedResult.Success, jsonResult.Data.Success);
        }
Exemple #21
0
        public void It_Should_Get_Not_Successfull_Message_And_Response_When_Sent_Email_After_Bad_ViewModel_Data_Passed()
        {
            //Arrange
            var expectedResult = new CustomJsonModel
            {
                Success = false,
                Message = "There was an error when processing your request. Please try again"
            };
            var antoherMortageEntry = new MortgageEntryViewModel()
            {
                InterestRate = 9,
            };
            MortgageController controller = new MortgageController(mortageServiceMock.Object);

            //Act
            var        controllerResult = controller.SendMail(antoherMortageEntry, _email);
            CustomJson jsonResult       = controllerResult as CustomJson;

            //Assert
            Assert.AreEqual(expectedResult.Message, jsonResult.Data.Message);
        }
        public void Mortgage__ShouldLoadAValidMortgage()
        {
            var mortgage = new Mortgage()
            {
                MortgageId = 9, InterestRate = 1, Name = "test"
            };

            mockRepositoryMortgage = new Mock <IRepositoryBase <Mortgage> >();
            mockRepositoryMortgage.Setup(m => m.GetId(9)).Returns(mortgage);

            MortgageController controller = new MortgageController(mockRepositoryMortgage.Object);

            ViewResult result = controller.Details(9) as ViewResult;

            var viewModel = controller.ViewData.Model as Mortgage;

            Assert.IsNotNull(result);
            Assert.IsNotNull(viewModel);
            Assert.IsTrue(viewModel.MortgageId == mortgage.MortgageId);
            Assert.AreEqual(viewModel, mortgage);
            Assert.AreSame(viewModel, mortgage);
        }
        public void MortgageControllerGetMortgageByIdShouldReturnOKWithResult()
        {
            var listOfMortgage = new List <Mortgage>();

            listOfMortgage.Add(new Mortgage {
                Name = "Loan", MortgageId = 1, InterestRate = 8.00m, CancellationFee = 10, EffectiveEndDate = DateTime.Now
            });

            var mockRepository = new Mock <IMortgageService>();

            mockRepository.Setup(x => x.GetAllMortgages())
            .Returns(listOfMortgage);


            var controller = new MortgageController(mockRepository.Object);

            IHttpActionResult actionResult = controller.Get(1);

            var contentResult = actionResult as OkNegotiatedContentResult <Mortgage>;

            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.AreEqual(1, contentResult.Content.MortgageId);
        }
        public void Mortgage_Index_ShouldPassAllMortgagesToTheView()
        {
            var mortgages = new List <Mortgage> {
                new Mortgage {
                    MortgageId = 1
                },
                new Mortgage {
                    MortgageId = 2
                }
            };

            mockRepositoryMortgage = new Mock <IRepositoryBase <Mortgage> >();
            mockRepositoryMortgage.Setup(m => m.GetAll()).Returns(mortgages.AsEnumerable);

            MortgageController controller = new MortgageController(mockRepositoryMortgage.Object);

            ViewResult             result     = controller.Index() as ViewResult;
            IEnumerable <Mortgage> emortgages = (IEnumerable <Mortgage>)result.ViewData.Model;

            Assert.IsNotNull(result);
            Assert.IsNotNull(emortgages);
            Assert.AreEqual(2, emortgages.Count());
            Assert.AreEqual(mortgages, emortgages);
        }