public async Task <IActionResult> RetrieveSingleMailingGroup(int mailingGroupId) { Logger.Trace($"Executing '{nameof(RetrieveSingleMailingGroup)}'."); var userId = HttpContext.GetUserId(); if (userId == null) { return(Unauthorized()); } var request = new RetrieveSingleMailingGroupRequest(mailingGroupId); request.SetUserId(userId.Value); try { var result = await _mediator.Send(request); return(result.GetResult()); } catch (Exception ex) { Logger.Error(ex, $"Unexpected error thrown while executing '{nameof(RetrieveMailingGroupsHandler)}'."); throw; } }
public async Task Should_ReturnNotFound_When_RetrievingNotExistingMailingGroupForUser(int mailingGroupId, int userId) { var cancellationToken = new CancellationToken(); var databaseContext = Create.MockedDbContextFor <DatabaseContext>(); databaseContext.Set <MailingGroup>().Add(new MailingGroup() { Id = 1, SystemUserId = 1, }); databaseContext.Set <MailingGroup>().Add(new MailingGroup() { Id = 2, SystemUserId = 2, }); databaseContext.SaveChanges(); var request = new RetrieveSingleMailingGroupRequest(mailingGroupId); request.SetUserId(userId); var result = await new RetrieveSingleMailingGroupHandler(databaseContext).Handle(request, cancellationToken); Assert.Multiple(() => { Assert.IsFalse(result.Success); Assert.AreEqual(result.StatusCode, HttpStatusCode.NotFound); Assert.IsNull(result.MailingGroup); }); }