Проверить, если свойство вызывает исключение с помощью nunit - PullRequest
8 голосов
/ 30 июля 2010

кажется, что нет делегатов в свойствах.Есть ли удобный способ сделать следующее?

Assert.Throws<InvalidOperationException>(
       delegate
       {
           // Current is a property as we all know
           nullNodeList.GetEnumerator().Current;
       });

Ответы [ 4 ]

9 голосов
/ 10 июля 2014

Ускоренная перемотка на четыре года, и теперь NUnit поддерживает это (текущая версия v2.6 - я не проверял, какая версия была представлена).

Assert.That(() => nullNodeList.GetEnumerator().Current,
    Throws.InvalidOperationException);
7 голосов
/ 30 июля 2010
Assert.Throws<InvalidOperationException>(
    delegate { object current = nullNodeList.GetEnumerator().Current; });
1 голос
/ 30 июля 2010

Вы можете попробовать присвоить его переменной или попробовать перечислить:

Assert.Throws<InvalidOperationException>(delegate
{
    // Current is a property as we all know
    object current = nullNodeList.GetEnumerator().Current;
});
1 голос
/ 30 июля 2010

почему бы не сказать:

Assert.Throws<InvalidOperationException>(
    () => nullNodeList.GetEnumerator().Current);
...