Модульное тестирование установлено без исключения - PullRequest
2 голосов
/ 14 февраля 2012

Я пытаюсь протестировать метод, который в конкретном сценарии должен выдавать исключение, которое имеет внутреннее исключение:

mockInvoiceRepository.Setup(x => x.PersistInvoice(invoice, false)).Throws(new Exception());

С этой строкой кода все в порядке, за исключением того, что мне нужно установить исключение исключения дляновое исключение, которое выбрасывается.Я не могу этого сделать, потому что это свойство только для чтения, а также не могу его высмеять, потому что оно не виртуальное.

Есть идеи, как этого добиться?

1 Ответ

5 голосов
/ 14 февраля 2012

Будет ли это работать? Здесь я использую перегруженный конструктор исключительной ситуации , который принимает строковое сообщение (о котором вы, похоже, не заботитесь) и внутреннее исключение.

var innerException = new ExpectedInnerException();
mockInvoiceRepository.Setup(x => x.PersistInvoice(invoice, false))
                     .Throws(new Exception("", innerException));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...