Test if property throws exception with nunit
-
04-10-2020 - |
Вопрос
it seems there are no delegates to properties. Is there a convenient way to do the following?
Assert.Throws<InvalidOperationException>(
delegate
{
// Current is a property as we all know
nullNodeList.GetEnumerator().Current;
});
Решение
Fast-forward four years and NUnit now supports this (current version is v2.6 - I've not checked which version this was introduced).
Assert.That(() => nullNodeList.GetEnumerator().Current,
Throws.InvalidOperationException);
Другие советы
Assert.Throws<InvalidOperationException>(
delegate { object current = nullNodeList.GetEnumerator().Current; });
You could try assigning it to a variable or try enumerating:
Assert.Throws<InvalidOperationException>(delegate
{
// Current is a property as we all know
object current = nullNodeList.GetEnumerator().Current;
});
why not say:
Assert.Throws<InvalidOperationException>(
() => nullNodeList.GetEnumerator().Current);
Не связан с StackOverflow