public async Task DetailsReturnsHttpNotFoundResultWhenTaskIsNull() { var sut = new VolunteerTaskController(Mock.Of <IMediator>(), null); var result = await sut.Details(It.IsAny <int>()); Assert.IsType <NotFoundResult>(result); }
public async Task DetailsSendsDetailsQueryWithCorrectTaskId() { const int volunteerTaskId = 1; var mediator = new Mock <IMediator>(); var sut = new VolunteerTaskController(mediator.Object, null); await sut.Details(volunteerTaskId); mediator.Verify(x => x.SendAsync(It.Is <DetailsQuery>(y => y.VolunteerTaskId == volunteerTaskId)), Times.Once); }
public async Task DetailsReturnsCorrectViewModelAndView() { var detailsViewModel = new DetailsViewModel(); var mediator = new Mock <IMediator>(); mediator.Setup(x => x.SendAsync(It.IsAny <DetailsQuery>())).ReturnsAsync(detailsViewModel); mediator.Setup(x => x.SendAsync(It.IsAny <AuthorizableTaskQuery>())).ReturnsAsync(new FakeAuthorizableTask(true, false, false, false)); var sut = new VolunteerTaskController(mediator.Object, null); var result = await sut.Details(It.IsAny <int>()) as ViewResult; var modelResult = result.ViewData.Model as DetailsViewModel; Assert.IsType <ViewResult>(result); Assert.IsType <DetailsViewModel>(modelResult); Assert.Equal(modelResult, detailsViewModel); }