コード例 #1
0
        public async Task New_POST_ModelStateInvalid_ReturnsViewWithError()
        {
            // Arrange
            var model = new NewJobOpportunityViewModel();

            _sut.ModelState.AddModelError("", "");

            // Act
            var result = (AlertDecoratorResult)await _sut.New(model, false);

            // Assert
            _jobOpportunityService.DidNotReceiveWithAnyArgs().CreateNewJobOpportunity(null, string.Empty);
            await _twitterService.DidNotReceiveWithAnyArgs().PostNewJobOpportunity(null);

            _sut.ModelState.IsValid.Should().BeFalse();

            result.AlertClass.Should().Be("alert-danger");
            result.Message.Should().Be("Han ocurrido errores de validación que no permiten continuar el proceso");

            var innerResult = (ViewResult)result.InnerResult;

            innerResult.ViewName.Should().BeEmpty();
            innerResult.Model.Should().BeSameAs(model);
        }