Я использую DataAnnotations для моей проверки модели i.e.
[Required(ErrorMessage="Please enter a name")]
public string Name { get; set; }
В моем контроллере я проверяю значение ModelState. Это верно возвращает false для недопустимых данных модели, опубликованных с моего представления.
Однако при выполнении unit test моего действия с контроллером ModelState всегда возвращает true:
[TestMethod]
public void Submitting_Empty_Shipping_Details_Displays_Default_View_With_Error()
{
// Arrange
CartController controller = new CartController(null, null);
Cart cart = new Cart();
cart.AddItem(new Product(), 1);
// Act
var result = controller.CheckOut(cart, new ShippingDetails() { Name = "" });
// Assert
Assert.IsTrue(string.IsNullOrEmpty(result.ViewName));
Assert.IsFalse(result.ViewData.ModelState.IsValid);
}
Нужно ли мне что-то делать, чтобы настроить проверку модели в моих тестах?
Спасибо,
Бен