проверить модель с помощью MOQ - PullRequest
0 голосов
/ 03 мая 2018

У меня есть модель (образец ниже), и я хотел бы проверить ее с помощью MOQ.

public class Employee{

 public string FirstName {get;set;}
 public string LastName {get;set;}

}

Хотелось бы запустить следующие тестовые случаи

  1. Имя и Фамилия не пустые
  2. Длина ввода FirstName и LastName не> 50 символов

Если честно, я вообще ничего не знаю о MOQ и, следовательно, пока не пробовал ни одного варианта.

1 Ответ

0 голосов
/ 04 мая 2018

Moq используется в модульном тестировании, он используется для макета экземпляров fack в тестируемую систему,

Вы можете проверить объект, реализовав IValidatableObject,

Попробуйте приведенный ниже фрагмент кода,

public class Employee : IValidatableObject
{

    public string FirstName { get; set; }
    public string LastName { get; set; }

    public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
    {
        var results = new List<ValidationResult>();

        if (string.IsNullOrEmpty(FirstName) || FirstName.Length > 50) {
            results.Add(new ValidationResult("Invalid first Name"));
        }

        if (string.IsNullOrEmpty(LastName) || LastName.Length > 50)
        {
            results.Add(new ValidationResult("Invalid last Name"));
        }

        return results;
    }
}

Для проверки объекта,

 var toValidate = new Employee(){};

 var results = new List<ValidationResult>();


 bool isValid = Validator.TryValidateObject(
        toValidate,
        new ValidationContext(toValidate, null, null),
        results,
        true);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...