public async Task PublishFunding_Returns_OK_Result_Given_User_Has_Required_Permission() { SetupAuthorizedUser(SpecificationActionTypes.CanReleaseFunding); _publishingApiClient.PublishFundingForSpecification(Arg.Any <string>()).Returns(_validatedApiResponse); IActionResult result = await _publishController.PublishFunding(ValidSpecificationId); result.Should().BeAssignableTo <OkObjectResult>(); }
public async Task <IActionResult> PublishFunding(string specificationId) { if (!await _authorizationHelper.DoesUserHavePermission( User, specificationId, SpecificationActionTypes.CanReleaseFunding)) { return(new ForbidResult()); } ValidatedApiResponse <JobCreationResponse> response = await _publishingApiClient.PublishFundingForSpecification(specificationId); return(response.Handle("Release Funding", onSuccess: x => x.Content.JobId != null ? (IActionResult)Ok(x.Content.JobId) : BadRequest())); }