public async Task DetailsSendsCampaignDetailQueryWithCorrectCampaignId() { const int campaignId = 100; var mockMediator = new Mock<IMediator>(); var sut = new CampaignController(mockMediator.Object, null); await sut.Details(campaignId); mockMediator.Verify(mock => mock.SendAsync(It.Is<CampaignDetailQuery>(c => c.CampaignId == campaignId))); }
public void CampaignDetailsNoCampaignReturns404() { var mockMediator = new Mock<IMediator>(); mockMediator.Setup(mock => mock.Send(It.IsAny<CampaignDetailQuery>())).Returns(() => null).Verifiable(); var mockImageService = new Mock<IImageService>(); var mockDataAccess = new Mock<IAllReadyDataAccess>(); var controller = new CampaignController( mockMediator.Object, mockImageService.Object, mockDataAccess.Object ); var actionResult = controller.Details(0); Assert.IsType<HttpNotFoundResult>(actionResult); mockMediator.Verify(mock => mock.Send(It.IsAny<CampaignDetailQuery>()), Times.Once); }
public async Task DetailsReturnsCorrectViewModelWhenViewModelIsNotNullAndUserIsOrgAdmin() { const int campaignId = 100; const int organizationId = 99; var mockMediator = new Mock<IMediator>(); // model is not null mockMediator.Setup(mock => mock.SendAsync(It.Is<CampaignDetailQuery>(c=>c.CampaignId == campaignId))).ReturnsAsync(new CampaignDetailViewModel { OrganizationId = organizationId, Id = campaignId }).Verifiable(); // user is org admin var controller = new CampaignController(mockMediator.Object, null); controller.MakeUserAnOrgAdmin(organizationId.ToString()); var view = (ViewResult)(await controller.Details(campaignId)); var viewModel = (CampaignDetailViewModel)view.ViewData.Model; Assert.Equal(viewModel.Id, campaignId); Assert.Equal(viewModel.OrganizationId, organizationId); }
public async Task DetailsSendsCampaignDetailQueryWithCorrectCampaignId() { var CAMPAIGN_ID = 100; var ORGANIZATION_ID = 99; var mockMediator = new Mock<IMediator>(); // model is not null mockMediator.Setup(mock => mock.SendAsync(It.Is<CampaignDetailQuery>(c => c.CampaignId == CAMPAIGN_ID))).ReturnsAsync(new CampaignDetailViewModel { OrganizationId = ORGANIZATION_ID, Id = CAMPAIGN_ID }).Verifiable(); var controller = new CampaignController(mockMediator.Object, null); controller.SetClaims(new List<Claim>()); // create a User for the controller var view = await controller.Details(CAMPAIGN_ID); mockMediator.Verify(mock => mock.SendAsync(It.Is<CampaignDetailQuery>(c => c.CampaignId == CAMPAIGN_ID))); }
public async Task DetailsReturnsCorrectViewModelWhenViewModelIsNotNullAndUserIsOrgAdmin() { int CAMPAIGN_ID = 100; int ORGANIZATION_ID = 99; var mockMediator = new Mock<IMediator>(); // model is not null mockMediator.Setup(mock => mock.SendAsync(It.Is<CampaignDetailQuery>(c=>c.CampaignId == CAMPAIGN_ID))).ReturnsAsync(new CampaignDetailModel { OrganizationId = ORGANIZATION_ID, Id = CAMPAIGN_ID }).Verifiable(); // user is org admin CampaignController controller = new CampaignController(mockMediator.Object, null); controller.SetClaims(new List<Claim> { new Claim(AllReady.Security.ClaimTypes.UserType, UserType.OrgAdmin.ToString()), new Claim(AllReady.Security.ClaimTypes.Organization, ORGANIZATION_ID.ToString()) }); ViewResult view = (ViewResult)(await controller.Details(CAMPAIGN_ID)); CampaignDetailModel viewModel = (CampaignDetailModel)view.ViewData.Model; Assert.Equal(viewModel.Id, CAMPAIGN_ID); Assert.Equal(viewModel.OrganizationId, ORGANIZATION_ID); }