Exemplo n.º 1
0
        public void Insert_Post_ReturnsViewIfModelStateIsNotValid()
        {
            // Arrange
            var controller = new CausaleController(new InMemoryCausaleRepository());

            //controller.ModelState.AddModelError("", "error message");
            controller.ModelState.Add("testError", new ModelState());
            controller.ModelState.AddModelError("testError", "test");

            Causale oCausale = GetCausale(1, "");

            // Act
            ActionResult result = controller.Insert(oCausale);

            // Assert
            Assert.IsInstanceOfType(result, typeof(RedirectToRouteResult));

            var vc = new ValidationContext(oCausale, null, null) { MemberName = "Descrizione" };
            var validationResults = new List<ValidationResult>();

            // Validate the whole Customer entity.
            bool isValidCausale = Validator.TryValidateObject(oCausale, vc, validationResults, true);
            Assert.IsFalse(isValidCausale);

            RedirectToRouteResult routeResult = result as RedirectToRouteResult;
            Assert.AreEqual(routeResult.RouteValues["action"], "Create");
        }