public GetTestsFixture() { GetAccountProviderLegalEntitiesRouteValues = new GetAccountProviderLegalEntitiesRouteValues { Ukprn = 12345678L, Operation = Operation.CreateCohort }; Mediator = new Mock <IMediator>(); Result = new GetAccountProviderLegalEntitiesWithPermissionQueryResult(new [] { new AccountProviderLegalEntityDto { AccountId = 41L, AccountLegalEntityId = 4131L, AccountLegalEntityName = "AccountLegalEntityName", AccountLegalEntityPublicHashedId = "ALEPHI", AccountName = "AccountName", AccountProviderId = 491L, AccountPublicHashedId = "ACCPHI" } }); Mediator.Setup(m => m.Send(It.Is <GetAccountProviderLegalEntitiesWithPermissionQuery>(q => q.Ukprn == GetAccountProviderLegalEntitiesRouteValues.Ukprn.Value && q.Operation == Operation.CreateCohort), It.IsAny <CancellationToken>())) .ReturnsAsync(Result); AccountProviderLegalEntitiesController = new AccountProviderLegalEntitiesController(Mediator.Object); }
public async Task <IHttpActionResult> Get([FromUri] GetAccountProviderLegalEntitiesRouteValues routeValues, CancellationToken cancellationToken) { if (routeValues.Ukprn == null) { ModelState.AddModelError(nameof(routeValues.Ukprn), "Currently a Ukprn filter needs to be supplied"); } if (routeValues.Operation == null) { ModelState.AddModelError(nameof(routeValues.Operation), "Currently an Operation filter needs to be supplied"); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var result = await _mediator.Send(new GetAccountProviderLegalEntitiesWithPermissionQuery(routeValues.Ukprn.Value, routeValues.Operation.Value), cancellationToken); return(Ok(new GetAccountProviderLegalEntitiesWithPermissionResponse { AccountProviderLegalEntities = result.AccountProviderLegalEntities })); }