Как я могу вызвать событие, используя Rhino Mocks с параметром ref bool - PullRequest
4 голосов
/ 21 октября 2010

Я пытаюсь написать тест, охватывающий мою обработку ошибок в определенном классе. Этот класс прослушивает событие Error со следующей подписью:

OnError(int ErrorNumber, string ErrorText, ref bool retry)

Проблема с переменной ref bool в конце. Я использую Rhino Mocks для создания фиктивного интерфейса для тестирования, и когда я пытаюсь поднять ошибку, используя следующее:

bool retry = false;
AdapterMock.Raise(x => x.Error += null, 0, "0", ref retry);

Он даже не скомпилируется, сообщая, что не может конвертировать из ref bool в Object.

Если я поменяю подпись на:

bool retry = false;
AdapterMock.Raise(x => x.Error += null, 0, "0", retry);

Я компилирую нормально, но тест завершается неудачно с System.InvalidOperationException: параметр # 3 - System.Boolean, но должен быть System.Boolean &

Я тяну свои волосы на этом, как мне правильно поднять это событие в моем макете?

1 Ответ

0 голосов
/ 07 января 2013

Попробуйте:

AdapterMock.Raise( x=> x.Error += null, Arg<int>.Is.Equal(0), Arg<string>.Is.Equal("0"), Arg.Ref(ref Is.Equal(retry)));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...