public async Task <IActionResult> Run( [HttpTrigger(AuthorizationLevel.Function, "get", Route = null)] [RequestBodyType(typeof(GetGroupMembersRequest), "get group members")] GetGroupMembersRequest req, CancellationToken cancellationToken) { try { if (req.IsValid(out var validationResults)) { GetGroupMembersResponse response = await _mediator.Send(req, cancellationToken); return(new OkObjectResult(ResponseWrapper <GetGroupMembersResponse, GroupServiceErrorCode> .CreateSuccessfulResponse(response))); } else { return(new ObjectResult(ResponseWrapper <GetGroupMembersResponse, GroupServiceErrorCode> .CreateUnsuccessfulResponse(GroupServiceErrorCode.ValidationError, validationResults)) { StatusCode = 422 }); } } catch (Exception ex) { _logger.LogErrorAndNotifyNewRelic($"Unhandled error in GetUserGroups", ex); return(new ObjectResult(ResponseWrapper <GetGroupMembersResponse, GroupServiceErrorCode> .CreateUnsuccessfulResponse(GroupServiceErrorCode.InternalServerError, "Internal Error")) { StatusCode = StatusCodes.Status500InternalServerError }); } }
private void SetupGroupService() { _groupService = new Mock <IGroupService>(); Dictionary <Guid, TaskAction> actions = new Dictionary <Guid, TaskAction>(); actions.Add(Guid.NewGuid(), new TaskAction() { TaskActions = new Dictionary <NewTaskAction, List <int> >() }); _getNewRequestActionsResponse = new GetNewRequestActionsResponse() { Actions = actions }; _groupService.Setup(x => x.GetNewRequestActions(It.IsAny <GetNewRequestActionsRequest>(), It.IsAny <CancellationToken>())) .ReturnsAsync(() => _getNewRequestActionsResponse); _getGroupMembersResponse = new GetGroupMembersResponse() { Users = new List <int>() { 1, 2 } }; _groupService.Setup(x => x.GetGroupMembers(It.IsAny <int>())) .ReturnsAsync(() => _getGroupMembersResponse); _formVariantResponse = new GetRequestHelpFormVariantResponse() { AccessRestrictedByRole = false, RequestorDefinedByGroup = false, RequestHelpFormVariant = RequestHelpFormVariant.Default, TargetGroups = TargetGroups.GenericGroup, SuppressRecipientPersonalDetails = true }; _groupService.Setup(x => x.GetRequestHelpFormVariant(It.IsAny <int>(), It.IsAny <string>(), It.IsAny <CancellationToken>())) .ReturnsAsync(() => _formVariantResponse); _groupService.Setup(x => x.GetGroupMember(It.IsAny <GetGroupMemberRequest>())) .ReturnsAsync(() => _getGroupMemberResponse); _groupService.Setup(x => x.GetUserRoles(It.IsAny <int>(), It.IsAny <CancellationToken>())) .ReturnsAsync(() => _getUserRolesResponse); _groupService.Setup(x => x.GetGroup(It.IsAny <int>())) .ReturnsAsync(() => _getGroupResponse); }
public void SetUp() { SetupGroupService(); SetupUserService(); SetupRequestService(); _getGroupMembersResponse = new GetGroupMembersResponse() { Users = new List <int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 } }; _getRequestDetailsResponse = new GetRequestDetailsResponse() { RequestSummary = new RequestSummary() { JobSummaries = new List <JobSummary>() { new JobSummary() { ReferringGroupID = GROUPID, PostCode = "PostCode", SupportActivity = SupportActivities.Shopping } }, ShiftJobs = new List <ShiftJob>() } }; _classUnderTest = new TaskNotificationMessage( _userService.Object, _requestService.Object, _groupService.Object ); }