Beispiel #1
0
        public async Task ShouldNotUpdateAsValidationInValid()
        {
            var viewModel = new UpdateNativeMobileFirstViewModel();

            var validationModel = new Mock <ISimpleResult>();

            validationModel.Setup(s => s.ToDictionary()).Returns(new Dictionary <string, string>
            {
                { "mobile-first-design", "required" },
            });

            validationModel.Setup(s => s.IsValid).Returns(false);

            Expression <Func <UpdateSolutionNativeMobileFirstCommand, bool> > match = c =>
                                                                                      c.SolutionId == SolutionId &&
                                                                                      c.MobileFirstDesign == viewModel.MobileFirstDesign;

            mockMediator
            .Setup(m => m.Send(It.Is(match), It.IsAny <CancellationToken>()))
            .ReturnsAsync(validationModel.Object);

            var result = await nativeMobileFirstController.UpdateMobileFirstAsync(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["mobile-first-design"].Should().Be("required");

            mockMediator.Verify(m => m.Send(It.Is(match), It.IsAny <CancellationToken>()));
        }
Beispiel #2
0
        public async Task ShouldNotUpdateAsValidationInValid()
        {
            var viewModel = new UpdateNativeMobileFirstViewModel();

            var validationModel = new Mock <ISimpleResult>();

            validationModel.Setup(s => s.ToDictionary()).Returns(new Dictionary <string, string> {
                { "mobile-first-design", "required" }
            });
            validationModel.Setup(s => s.IsValid).Returns(false);

            _mockMediator
            .Setup(m => m.Send(
                       It.Is <UpdateSolutionNativeMobileFirstCommand>(q =>
                                                                      q.SolutionId == SolutionId && q.MobileFirstDesign == viewModel.MobileFirstDesign),
                       It.IsAny <CancellationToken>())).ReturnsAsync(validationModel.Object);

            var result = await _nativeMobileFirstController.UpdateMobileFirstAsync(SolutionId, viewModel).ConfigureAwait(false) as BadRequestObjectResult;

            result.StatusCode.Should().Be((int)HttpStatusCode.BadRequest);
            var resultValue = result.Value as Dictionary <string, string>;

            resultValue.Count.Should().Be(1);
            resultValue["mobile-first-design"].Should().Be("required");

            _mockMediator.Verify(
                m => m.Send(
                    It.Is <UpdateSolutionNativeMobileFirstCommand>(q =>
                                                                   q.SolutionId == SolutionId && q.MobileFirstDesign == viewModel.MobileFirstDesign),
                    It.IsAny <CancellationToken>()), Times.Once);
        }
Beispiel #3
0
        public async Task ShouldUpdateValidationValid()
        {
            var model = new UpdateNativeMobileFirstViewModel();

            var validationModel = new Mock <ISimpleResult>();

            validationModel.Setup(s => s.IsValid).Returns(true);

            Expression <Func <UpdateSolutionNativeMobileFirstCommand, bool> > match = c =>
                                                                                      c.SolutionId == SolutionId &&
                                                                                      c.MobileFirstDesign == model.MobileFirstDesign;

            mockMediator
            .Setup(m => m.Send(It.Is(match), It.IsAny <CancellationToken>()))
            .ReturnsAsync(validationModel.Object);

            var result = await nativeMobileFirstController.UpdateMobileFirstAsync(SolutionId, model) as NoContentResult;

            Assert.NotNull(result);
            result.StatusCode.Should().Be(StatusCodes.Status204NoContent);

            mockMediator.Verify(m => m.Send(It.Is(match), It.IsAny <CancellationToken>()));
        }
Beispiel #4
0
        public async Task ShouldUpdateValidationValid()
        {
            var viewModel = new UpdateNativeMobileFirstViewModel();

            var validationModel = new Mock <ISimpleResult>();

            validationModel.Setup(s => s.IsValid).Returns(true);

            _mockMediator
            .Setup(m => m.Send(
                       It.Is <UpdateSolutionNativeMobileFirstCommand>(q =>
                                                                      q.SolutionId == SolutionId && q.MobileFirstDesign == viewModel.MobileFirstDesign),
                       It.IsAny <CancellationToken>())).ReturnsAsync(validationModel.Object);

            var result = await _nativeMobileFirstController.UpdateMobileFirstAsync(SolutionId, viewModel).ConfigureAwait(false) as NoContentResult;

            result.StatusCode.Should().Be((int)HttpStatusCode.NoContent);
            _mockMediator.Verify(
                m => m.Send(
                    It.Is <UpdateSolutionNativeMobileFirstCommand>(q =>
                                                                   q.SolutionId == SolutionId && q.MobileFirstDesign == viewModel.MobileFirstDesign),
                    It.IsAny <CancellationToken>()), Times.Once);
        }
Beispiel #5
0
 public async Task <ActionResult> UpdateMobileFirstAsync([FromRoute][Required] string id,
                                                         [FromBody][Required] UpdateNativeMobileFirstViewModel viewModel) =>
 (await _mediator.Send(new UpdateSolutionNativeMobileFirstCommand(id, viewModel?.MobileFirstDesign)).ConfigureAwait(false)).ToActionResult();
 public async Task <ActionResult> UpdateMobileFirstAsync([Required] string id, UpdateNativeMobileFirstViewModel model) =>
 (await mediator.Send(new UpdateSolutionNativeMobileFirstCommand(id, model?.MobileFirstDesign))).ToActionResult();