public async Task ShouldUpdateValidationInvalid() { var viewModel = new UpdateSolutionMobileConnectionDetailsViewModel(); var validationModel = new MaxLengthResult { MaxLength = { "connection-requirements-description" } }; _mockMediator.Setup(m => m.Send( It.Is <UpdateSolutionMobileConnectionDetailsCommand>(q => q.SolutionId == SolutionId && q.Details == viewModel), It.IsAny <CancellationToken>())).ReturnsAsync(validationModel); var result = (await _controller.UpdateMobileConnectionDetails(SolutionId, viewModel).ConfigureAwait(false)) as BadRequestObjectResult; result.StatusCode.Should().Be((int)HttpStatusCode.BadRequest); (result.Value as UpdateFormMaxLengthResult).MaxLength.Should().BeEquivalentTo(validationModel.MaxLength); _mockMediator.Verify( m => m.Send( It.Is <UpdateSolutionMobileConnectionDetailsCommand>(q => q.SolutionId == SolutionId && q.Details == viewModel), It.IsAny <CancellationToken>()), Times.Once); }
public async Task ShouldUpdateValidationInvalid() { var viewModel = new UpdateSolutionBrowserHardwareRequirementsViewModel(); var validationResult = new MaxLengthResult() { MaxLength = { "hardware-requirements-description" } }; _mockMediator.Setup(m => m.Send( It.Is <UpdateSolutionBrowserHardwareRequirementsCommand>(q => q.SolutionId == SolutionId && q.UpdateSolutionHardwareRequirementsViewModel == viewModel), It.IsAny <CancellationToken>())).ReturnsAsync(validationResult); var result = await _hardwareRequirementsController.UpdateHardwareRequirementsAsync(SolutionId, viewModel) .ConfigureAwait(false) as BadRequestObjectResult; result.StatusCode.Should().Be((int)HttpStatusCode.BadRequest); (result.Value as UpdateFormMaxLengthResult).MaxLength.Should().BeEquivalentTo(new[] { "hardware-requirements-description" }); _mockMediator.Verify( m => m.Send( It.Is <UpdateSolutionBrowserHardwareRequirementsCommand>(q => q.SolutionId == SolutionId && q.UpdateSolutionHardwareRequirementsViewModel == viewModel), It.IsAny <CancellationToken>()), Times.Once); }
public void Setup() { _mockMediator = new Mock <IMediator>(); _contactDetailsController = new ContactDetailsController(_mockMediator.Object); _mockMediator.Setup(m => m.Send(It.Is <GetContactDetailBySolutionIdQuery>(q => q.Id == SolutionId), It.IsAny <CancellationToken>())) .ReturnsAsync(() => _returnedContacts); _mockMediator.Setup(m => m.Send(It.Is <UpdateSolutionContactDetailsCommand>(q => q.SolutionId == SolutionId), It.IsAny <CancellationToken>())).ReturnsAsync(() => _validationResult); _validationResult = new MaxLengthResult(); _returnedContacts = new List <IContact>(); }
public async Task SubmitForReviewResultFailure() { _validationResult = new MaxLengthResult { MaxLength = { "This update was too cool for school" } }; var expectedResponse = new UpdateFormMaxLengthResult(_validationResult); var result = await _contactDetailsController.UpdateContactDetailsAsync(SolutionId, new UpdateSolutionContactDetailsViewModel()).ConfigureAwait(false) as BadRequestObjectResult; result.Should().NotBeNull(); result.StatusCode.Should().Be(400); var actual = result.Value as UpdateFormMaxLengthResult; actual.Should().NotBeNull(); actual.Should().BeEquivalentTo(expectedResponse); }
public async Task ShouldUpdateValidationValid() { var featuresUpdateViewModel = new UpdateSolutionFeaturesViewModel() { Listing = new List <string>() { "test", "test2" } }; var validationModel = new MaxLengthResult(); _mockMediator.Setup(m => m.Send(It.Is <UpdateSolutionFeaturesCommand>(q => q.SolutionId == SolutionId && q.UpdateSolutionFeaturesViewModel == featuresUpdateViewModel), It.IsAny <CancellationToken>())).ReturnsAsync(validationModel); var result = (await _featuresController.UpdateFeaturesAsync(SolutionId, featuresUpdateViewModel).ConfigureAwait(false)) as NoContentResult; result.StatusCode.Should().Be((int)HttpStatusCode.NoContent); _mockMediator.Verify(m => m.Send(It.Is <UpdateSolutionFeaturesCommand>(q => q.SolutionId == SolutionId && q.UpdateSolutionFeaturesViewModel == featuresUpdateViewModel), It.IsAny <CancellationToken>()), Times.Once); }
public async Task ShouldUpdateValidationValid() { var viewModel = new UpdateSolutionBrowserHardwareRequirementsViewModel(); var validationResult = new MaxLengthResult(); _mockMediator .Setup(m => m.Send( It.Is <UpdateSolutionBrowserHardwareRequirementsCommand>(q => q.SolutionId == SolutionId && q.UpdateSolutionHardwareRequirementsViewModel == viewModel), It.IsAny <CancellationToken>())).ReturnsAsync(validationResult); var result = await _hardwareRequirementsController.UpdateHardwareRequirementsAsync(SolutionId, viewModel) .ConfigureAwait(false) as NoContentResult; result?.StatusCode.Should().Be((int)HttpStatusCode.NoContent); _mockMediator.Verify( m => m.Send( It.Is <UpdateSolutionBrowserHardwareRequirementsCommand>(q => q.SolutionId == SolutionId && q.UpdateSolutionHardwareRequirementsViewModel == viewModel), It.IsAny <CancellationToken>()), Times.Once); }
public async Task ShouldUpdateValidationValid() { var viewModel = new UpdateSolutionMobileConnectionDetailsViewModel(); var validationModel = new MaxLengthResult(); _mockMediator .Setup(m => m.Send( It.Is <UpdateSolutionMobileConnectionDetailsCommand>(q => q.SolutionId == SolutionId && q.Details == viewModel), It.IsAny <CancellationToken>())) .ReturnsAsync(validationModel); var result = (await _controller.UpdateMobileConnectionDetails(SolutionId, viewModel) .ConfigureAwait(false)) as NoContentResult; result?.StatusCode.Should().Be((int)HttpStatusCode.NoContent); _mockMediator.Verify( m => m.Send( It.Is <UpdateSolutionMobileConnectionDetailsCommand>(q => q.SolutionId == SolutionId && q.Details == viewModel), It.IsAny <CancellationToken>()), Times.Once); }
public async Task ShouldUpdateValidationInvalid() { var featuresUpdateViewModel = new UpdateSolutionFeaturesViewModel() { Listing = new List <string>() { new string('a', 200) } }; var validationModel = new MaxLengthResult() { MaxLength = { "listing-1" } }; _mockMediator.Setup(m => m.Send(It.Is <UpdateSolutionFeaturesCommand>(q => q.SolutionId == SolutionId && q.UpdateSolutionFeaturesViewModel == featuresUpdateViewModel), It.IsAny <CancellationToken>())).ReturnsAsync(validationModel); var result = (await _featuresController.UpdateFeaturesAsync(SolutionId, featuresUpdateViewModel).ConfigureAwait(false)) as BadRequestObjectResult; result.StatusCode.Should().Be((int)HttpStatusCode.BadRequest); (result.Value as UpdateFormMaxLengthResult).MaxLength.Should().BeEquivalentTo("listing-1"); _mockMediator.Verify(m => m.Send(It.Is <UpdateSolutionFeaturesCommand>(q => q.SolutionId == SolutionId && q.UpdateSolutionFeaturesViewModel == featuresUpdateViewModel), It.IsAny <CancellationToken>()), Times.Once); }
internal static ActionResult ToActionResult(this MaxLengthResult validationResult) => validationResult.IsValid ? (ActionResult) new NoContentResult() : new BadRequestObjectResult(new UpdateFormMaxLengthResult(validationResult));
internal UpdateFormMaxLengthResult(MaxLengthResult validationResult) => MaxLength = validationResult?.MaxLength;