public void ReturnViewResult_WhenIdIsCorrect() { // Arrange var mapService = new Mock <IMapService>(); var employeeService = new Mock <IEmployeeService>(); var selfEmploymentService = new Mock <ISelfEmploymentService>(); var payrollCalculations = new Mock <Payroll>(); var id = 5; SelfEmployment freelanceContractModel = new FakeSelfEmployment() { Id = id, GrossSalary = 1000, SocialSecurityIncome = 1110, PersonalInsurance = 50, }; selfEmploymentService.Setup(x => x.GetById(id)).Returns(freelanceContractModel).Verifiable(); // Act var freelanceController = new FreelanceContractController(mapService.Object, employeeService.Object, selfEmploymentService.Object, payrollCalculations.Object); // Assert Assert.IsInstanceOf <ViewResult>(freelanceController.Delete(id, freelanceContractModel)); }
public void ShouldReturnInstanceOfIQueryable() { // Arrange var mockedRepository = new Mock <IRepository <SelfEmployment> >(); var selfEmplService = new SelfEmploymentService(mockedRepository.Object); SelfEmployment mockedSelfEmpl = new FakeSelfEmployment(); SelfEmployment mockedSelfEmpl2 = new FakeSelfEmployment(); SelfEmployment mockedSelfEmpl3 = new FakeSelfEmployment(); mockedSelfEmpl.Id = 2; mockedSelfEmpl2.Id = 3; mockedSelfEmpl3.Id = 4; // Act selfEmplService.Create(mockedSelfEmpl); selfEmplService.Create(mockedSelfEmpl2); selfEmplService.Create(mockedSelfEmpl3); var query = selfEmplService.GetTop(3); // Assert Assert.IsInstanceOf <IQueryable <SelfEmployment> >(query); }
public void ShouldInvokeOnceAndUpdateBill() { // Arrange var mockedRepository = new Mock <IRepository <SelfEmployment> >(); var selfEmplService = new SelfEmploymentService(mockedRepository.Object); SelfEmployment mockedSelfEmpl = new FakeSelfEmployment(); SelfEmployment mockedSelfEmpl2 = new FakeSelfEmployment(); SelfEmployment mockedSelfEmpl3 = new FakeSelfEmployment(); mockedSelfEmpl.Id = 2; mockedSelfEmpl2.Id = 3; mockedSelfEmpl3.Id = 4; // Act selfEmplService.Create(mockedSelfEmpl); selfEmplService.Create(mockedSelfEmpl2); selfEmplService.Create(mockedSelfEmpl3); selfEmplService.UpdateById(2, mockedSelfEmpl); // Assert mockedRepository.Verify(r => r.Update(mockedSelfEmpl), Times.Once); }
public void ShouldInvokeOnlyOnce_WhenIsCalled() { // Arrange var mockedRepository = new Mock <IRepository <SelfEmployment> >(); var selfEmplService = new SelfEmploymentService(mockedRepository.Object); SelfEmployment mockedSelfEmpl = new FakeSelfEmployment(); SelfEmployment mockedSelfEmpl2 = new FakeSelfEmployment(); SelfEmployment mockedSelfEmpl3 = new FakeSelfEmployment(); mockedSelfEmpl.Id = 2; mockedSelfEmpl2.Id = 3; mockedSelfEmpl3.Id = 4; // Act selfEmplService.Create(mockedSelfEmpl); selfEmplService.Create(mockedSelfEmpl2); selfEmplService.Create(mockedSelfEmpl3); selfEmplService.GetTop(3); // Assert mockedRepository.Verify(r => r.All, Times.Once); }
public void InvokeOnce_WhenParameterIsCorrect() { // Arrange var mockedRepository = new Mock <IRepository <SelfEmployment> >(); var selfEmplService = new SelfEmploymentService(mockedRepository.Object); var mockedSelfEmployment = new FakeSelfEmployment(); // Act selfEmplService.Create(mockedSelfEmployment); // Assert mockedRepository.Verify(r => r.Add(mockedSelfEmployment), Times.Once); }
public void HttpGet_ReturnPreviewSelfEmploymentViewModel_WhenPaycheckIsNotNull() { // Arrange var mapService = new Mock <IMapService>(); var employeeService = new Mock <IEmployeeService>(); var selfEmploymentService = new Mock <ISelfEmploymentService>(); var payrollCalculations = new Mock <Payroll>(); var id = 5; var freelanceContractModel = new Mock <PreviewSelfEmploymentViewModel>(); var employeeId = 10; Employee mockedEmployee = new FakeEmployee() { Id = employeeId, FirstName = "Georgi", MiddleName = "Georgiev", LastName = "Georgiev", PersonalId = "8010104050" }; SelfEmployment mockedBill = new FakeSelfEmployment() { Id = id, GrossSalary = 1000, SocialSecurityIncome = 670, PersonalInsurance = 125, IncomeTax = 90, NetWage = 750, Employee = mockedEmployee, EmployeeId = mockedEmployee.Id }; employeeService.Setup(x => x.GetById(10)).Returns(mockedEmployee).Verifiable(); selfEmploymentService.Setup(x => x.GetById(id)).Returns(mockedBill).Verifiable(); mapService.Setup(x => x.Map <PreviewSelfEmploymentViewModel>(mockedBill)).Returns(new PreviewSelfEmploymentViewModel() { Id = id, EmployeeId = employeeId }).Verifiable(); // Act var nonLaborController = new FreelanceContractController(mapService.Object, employeeService.Object, selfEmploymentService.Object, payrollCalculations.Object); var result = nonLaborController.Edit(id, mockedBill) as ViewResult; // Assert Assert.IsInstanceOf <PreviewSelfEmploymentViewModel>(result.Model); }
public void InvokeOnce_WhenValidId_IsPassedCorrectly() { // Arrange var mockedRepository = new Mock <IRepository <SelfEmployment> >(); var selfEmplService = new SelfEmploymentService(mockedRepository.Object); SelfEmployment bill = new FakeSelfEmployment(); bill.Id = 2; // Act selfEmplService.Create(bill); selfEmplService.DeleteById(2); // Assert mockedRepository.Verify(r => r.Delete(It.IsAny <int>()), Times.Once); }
public void HttpPost_ReturnRedirectToRouteResult_WhenModelStateIsValid() { // Arrange var mapService = new Mock <IMapService>(); var employeeService = new Mock <IEmployeeService>(); var selfEmploymentService = new Mock <ISelfEmploymentService>(); var payrollCalculations = new Mock <Payroll>(); var id = 5; var freelanceContractModel = new Mock <PreviewSelfEmploymentViewModel>(); var employeeId = 10; Employee mockedEmployee = new FakeEmployee() { Id = employeeId, FirstName = "Georgi", MiddleName = "Georgiev", LastName = "Georgiev", PersonalId = "8010104050" }; var mockedBill = new FakeSelfEmployment() { Id = id, GrossSalary = 1000, SocialSecurityIncome = 670, PersonalInsurance = 125, IncomeTax = 90, NetWage = 750, Employee = mockedEmployee, EmployeeId = mockedEmployee.Id }; employeeService.Setup(x => x.GetById(10)).Returns(mockedEmployee).Verifiable(); selfEmploymentService.Setup(x => x.GetById(id)).Returns(mockedBill).Verifiable(); mapService.Setup(x => x.Map <SelfEmployment>(freelanceContractModel.Object)).Returns(mockedBill).Verifiable(); // Act var nonLaborController = new FreelanceContractController(mapService.Object, employeeService.Object, selfEmploymentService.Object, payrollCalculations.Object); // Assert Assert.IsInstanceOf <RedirectToRouteResult>(nonLaborController.Edit(freelanceContractModel.Object)); }
public void GetById_ShouldInvokeOnlyOnce() { // Arrange var mockedRepository = new Mock <IRepository <SelfEmployment> >(); var selfEmplService = new SelfEmploymentService(mockedRepository.Object); var mockedSelfEmployment = new FakeSelfEmployment(); mockedSelfEmployment.Id = 2; // Act selfEmplService.Create(mockedSelfEmployment); selfEmplService.GetById(mockedSelfEmployment.Id); // Assert mockedRepository.Verify(r => r.GetById(mockedSelfEmployment.Id), Times.Once); }
public void ReturnCreateRemunerationBillViewModel_WhenActionIsCalled() { // Arrange var mapService = new Mock <IMapService>(); var employeeService = new Mock <IEmployeeService>(); var selfEmploymentService = new Mock <ISelfEmploymentService>(); var payrollCalculations = new Mock <Payroll>(); var id = 5; Employee mockedEmployee = new FakeEmployee() { Id = id, FirstName = "Alexander", MiddleName = "Petrov", LastName = "Vasilev", PersonalId = "8010107070" }; SelfEmployment mockedSelfEmpl = new FakeSelfEmployment() { Id = 1, EmployeeId = id, Employee = mockedEmployee }; employeeService.Setup(x => x.GetById(id)).Returns(mockedEmployee).Verifiable(); var freelanceContractModel = new CreateSelfEmploymentViewModel(); mapService.Setup(x => x.Map <CreateSelfEmploymentViewModel>(mockedSelfEmpl)).Returns(freelanceContractModel).Verifiable(); // Act FreelanceContractController laborController = new FreelanceContractController(mapService.Object, employeeService.Object, selfEmploymentService.Object, payrollCalculations.Object); laborController.ModelState.AddModelError("invalid", "Invalid"); var result = laborController.CreateFreelanceContract(id, mockedSelfEmpl) as ViewResult; // Assert Assert.IsInstanceOf <ViewResult>(result); Assert.AreEqual(freelanceContractModel, result.Model); }