Я пытаюсь создать единичный тест для проверки объекта Entity Framework. Я нашел эту ссылку: https://stackoverflow.com/a/11514648/2486661, но проверка для меня никогда не получает значение false. Я использую аннотации данных в свойствах объекта сущности. Для этого я создаю объект MetaData для включения аннотаций и аннотированный объект сущности, как это:Тестирование модулей для сущности Framework Validation
[MetadataType(typeof(MyEntityObjectMetaData))]
public partial class MyEntityObject
{
}
Мои проверки аннотации, как это:
public class MyEntityObjectMetaData
{
[StringLength(8, ErrorMessage = "Invalid Length for myProperty.")]
public String myProperty { get; set; }
}
И код для модульного тестирования:
[TestMethod]
public void TestMethod1()
{
MyEntityObject myEntityObject = new MyEntityObject();
myEntityObject.myProperty = "1234567890";
var context = new ValidationContext(myEntityObject, null, null);
var results = new List<ValidationResult>();
var actual = Validator.TryValidateObject(myEntityObject, context, results);
var expected = false;
Assert.AreEqual(expected, actual);
}
Я не понимаю, почему проверка объекта возвращает значение true, если у меня есть недопустимое значение для свойства. Спасибо за любую помощь.