public async Task ShouldUpdateValidationValidAsync() { HashSet <ClaimedEpicViewModel> claimedEpics = new HashSet <ClaimedEpicViewModel> { new() { EpicId = "Epic1", StatusName = "Passed", }, }; var viewModel = new UpdateEpicsViewModel { ClaimedEpics = claimedEpics }; var validationModel = new Mock <ISimpleResult>(); validationModel.Setup(s => s.IsValid).Returns(true); mockMediator .Setup(m => m.Send(It.IsAny <UpdateClaimedEpicsCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(validationModel.Object); var result = await controller.UpdateAsync(SolutionId, viewModel) as NoContentResult; Assert.NotNull(result); result.StatusCode.Should().Be(StatusCodes.Status204NoContent); mockMediator.Verify(m => m.Send( It.Is <UpdateClaimedEpicsCommand>(e => e.SolutionId == SolutionId), It.IsAny <CancellationToken>())); }
public async Task ShouldUpdateValidationValidAsync() { HashSet <ClaimedEpicViewModel> claimedEpics = new HashSet <ClaimedEpicViewModel>() { new ClaimedEpicViewModel() { EpicId = "Epic1", StatusName = "Passed" } }; var viewModel = new UpdateEpicsViewModel { ClaimedEpics = claimedEpics }; var validationModel = new Mock <ISimpleResult>(); validationModel.Setup(s => s.IsValid).Returns(true); _mockMediator .Setup(m => m.Send(It.IsAny <UpdateClaimedEpicsCommand>(), It.IsAny <CancellationToken>())).ReturnsAsync(validationModel.Object); var result = (await _controller.UpdateAsync(SolutionId, viewModel).ConfigureAwait(false)) as NoContentResult; result.StatusCode.Should().Be((int)HttpStatusCode.NoContent); _mockMediator.Verify( m => m.Send(It.Is <UpdateClaimedEpicsCommand>(e => e.SolutionId == SolutionId), It.IsAny <CancellationToken>()), Times.Once); }
public async Task ShouldUpdateValidationInvalid() { HashSet <ClaimedEpicViewModel> claimedEpics = new HashSet <ClaimedEpicViewModel> { new() { EpicId = "Test", StatusName = "Unknown", }, }; var viewModel = new UpdateEpicsViewModel { ClaimedEpics = claimedEpics }; var validationModel = new Mock <ISimpleResult>(); validationModel.Setup(s => s.ToDictionary()).Returns(new Dictionary <string, string> { { "epics", "epicsInvalid" }, }); validationModel.Setup(s => s.IsValid).Returns(false); mockMediator .Setup(m => m.Send(It.IsAny <UpdateClaimedEpicsCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(validationModel.Object); var result = await controller.UpdateAsync(SolutionId, viewModel) as BadRequestObjectResult; Assert.NotNull(result); result.StatusCode.Should().Be(StatusCodes.Status400BadRequest); var resultValue = result.Value as Dictionary <string, string>; Assert.NotNull(resultValue); resultValue.Count.Should().Be(1); resultValue["epics"].Should().Be("epicsInvalid"); mockMediator.Verify(m => m.Send( It.Is <UpdateClaimedEpicsCommand>(e => e.SolutionId == SolutionId), It.IsAny <CancellationToken>())); }
public async Task<ActionResult> UpdateAsync([FromRoute] [Required] string id, [FromBody] [Required] UpdateEpicsViewModel viewModel) => (await _mediator.Send(new UpdateClaimedEpicsCommand(id, viewModel?.ClaimedEpics)) .ConfigureAwait(false)).ToActionResult();
public async Task <ActionResult> UpdateAsync([Required] string id, UpdateEpicsViewModel model) => (await mediator.Send(new UpdateClaimedEpicsCommand(id, model?.ClaimedEpics))).ToActionResult();