public void AddNewProject_WhenInputIsNull_ThenReturnsSuccessFalse() { //Assign Mock<IDisposableCollection> disposables = new Mock<IDisposableCollection>(); Mock<IProjectRepository> mockedIProjectRepository = new Mock<IProjectRepository>(); Mock<IUnitOfWork> mockedUoW = new Mock<IUnitOfWork>(); ProjectController projectController = new ProjectController(mockedIProjectRepository.Object, mockedUoW.Object, disposables.Object); //Act ActionResult result = projectController.Add(null); //Assert Assert.NotNull(result); bool success = (bool)((JsonResult)result).Data.GetType().GetProperty("success").GetValue(((JsonResult)result).Data); Assert.True(success == false); }
public void AddNewProject_WhenValidInput_ThenSavesItInRepository() { //Assign Mock<IDisposableCollection> disposables = new Mock<IDisposableCollection>(); Mock<IProjectRepository> mockedIProjectRepository = new Mock<IProjectRepository>(); mockedIProjectRepository.Setup(x => x.Add(It.Is<Project>(_ => true))); Mock<IUnitOfWork> mockedUoW = new Mock<IUnitOfWork>(); mockedUoW.Setup(uow => uow.Commit()); ProjectInputModel input = new ProjectInputModel(); ProjectController projectController = new ProjectController(mockedIProjectRepository.Object, mockedUoW.Object, disposables.Object); //Act ActionResult result = projectController.Add(input); //Assert Assert.NotNull(result); mockedIProjectRepository.VerifyAll(); }