У меня есть свойство только для получения, например
public ICar Car
{
{
get
{
return _car ?? (_car = GetCar());
}
}
}
GetCar()
при определенных обстоятельствах выдаст NotSupportedException
, и я хочу выполнить это модульное тестирование.Я использую Moq.
Я пытаюсь использовать это в моем модульном тесте, но он не работает со свойствами, только с методами
var sut = new CarProcessor(...); //init subject under test
Assert.Throws<NotSupportedException>(() => sut.Car); //evaluate result of Car property
Это не скомпилируется, и оно говорит «Только оператор присваивания, приращение, декремент, ожидание и выражение нового объекта могут использоваться как оператор» error.
Выполнение того же, что и выше для метода, вместо этого свойство отлично работает.