public void RegisterTaskHasHttpGetAttribute() { var sut = new OrganizationApiController(null); var attribute = sut.GetAttributesOn(x => x.GetContact(It.IsAny <int>())).OfType <HttpGetAttribute>().SingleOrDefault(); Assert.NotNull(attribute); }
public void Search_returns_matching_organizations_from_OrganizationService() { // Arrange var organization1 = new OrganizationViewModel { OrganizationId = Guid.NewGuid(), OrganizationName = "Organization1", IsEnabled = true }; var organization2 = new OrganizationViewModel { OrganizationId = Guid.NewGuid(), OrganizationName = "Organization2", IsEnabled = true }; var organizationService = Substitute.For <IOrganizationService>(); organizationService.Search(Arg.Any <string>()).Returns(new List <OrganizationViewModel> { organization1, organization2 }); var sut = new OrganizationApiController(organizationService); // Act var result = sut.Search(String.Empty); // Assert result.GetType().ShouldBe(typeof(JsonResult)); var jsonResult = (JsonResult)result; var viewModels = ((IEnumerable <OrganizationViewModel>)jsonResult.Value).ToList(); viewModels.Count.ShouldBe(2); viewModels.Any(x => x.OrganizationId == organization1.OrganizationId).ShouldBeTrue(); viewModels.Any(x => x.OrganizationId == organization2.OrganizationId).ShouldBeTrue(); }
public void ControllerHasAuthorizeAtttributeWithCorrectPolicy() { var sut = new OrganizationApiController(null); var attribute = sut.GetAttributes().OfType <AuthorizeAttribute>().SingleOrDefault(); Assert.NotNull(attribute); Assert.Equal(attribute.Policy, "OrgAdmin"); }
public void ControllerHasAreaAtttributeWithTheCorrectAreaName() { var sut = new OrganizationApiController(null); var attribute = sut.GetAttributes().OfType <AreaAttribute>().SingleOrDefault(); Assert.NotNull(attribute); Assert.Equal(attribute.RouteValue, AreaNames.Admin); }
public void ControllerHasProducesAtttributeWithTheCorrectContentType() { var sut = new OrganizationApiController(null); var attribute = sut.GetAttributes().OfType <ProducesAttribute>().SingleOrDefault(); Assert.NotNull(attribute); Assert.Equal(attribute.ContentTypes.Select(x => x).First(), "application/json"); }
public void ControllerHasRouteAtttributeWithTheCorrectRoute() { var sut = new OrganizationApiController(null); var attribute = sut.GetAttributes().OfType <RouteAttribute>().SingleOrDefault(); Assert.NotNull(attribute); Assert.Equal(attribute.Template, "admin/api/organization"); }
public void RegisterTaskHasProducesAttributeWithCorrectContentType() { var sut = new OrganizationApiController(null); var attribute = sut.GetAttributesOn(x => x.GetContact(It.IsAny <int>())).OfType <ProducesAttribute>().SingleOrDefault(); Assert.NotNull(attribute); Assert.Equal(attribute.Type, typeof(ContactInformationViewModel)); Assert.Equal(attribute.ContentTypes.Select(x => x).First(), "application/json"); }
public async Task GetContactSendsOrganizationContactQueryWithCorrectData() { const int organizationId = 1; var mediator = new Mock <IMediator>(); var sut = new OrganizationApiController(mediator.Object); await sut.GetContact(organizationId); mediator.Verify(x => x.SendAsync(It.Is <OrganizationContactQuery>(y => y.OrganizationId == organizationId && y.ContactType == ContactTypes.Primary))); }
public async Task GetContactReturnsCorrectModel() { var mediator = new Mock <IMediator>(); mediator.Setup(x => x.SendAsync(It.IsAny <OrganizationContactQuery>())).ReturnsAsync(new ContactInformationViewModel()); var sut = new OrganizationApiController(mediator.Object); var result = await sut.GetContact(It.IsAny <int>()); Assert.IsType <ContactInformationViewModel>(result); }