Носорог издевается. Как добавить ожидание, что обработчик событий был подписан - PullRequest
5 голосов
/ 17 февраля 2012

У меня есть такой интерфейс:

interface IView
{
     event EventHandler<MyEventArgs> SomeEvent;
}

и класс

class Presenter
{
     private IView _view;
     public Presenter(IView view)
     {
         view.SomeEvent += MyEventHandler;
     }

     private MyEventHandler(...)
}

Я пытаюсь проверить это с помощью RhinoMocks и MockRepository.VerifyAll () выдает следующееисключение

Rhino.Mocks.Exceptions.ExpectationViolationException: IView.add_SomeEvent (System.EventHandler`1 [MyEventArgs]);Ожидаемый # 1, фактический # 0.

Итак, вопрос:

Как добавить ожидание того, что событие подписано?

1 Ответ

4 голосов
/ 17 февраля 2012

Извините, ребята, я обнаружил, что я делаю неправильно:

_viewMock.Expect(x => x.SomeEvent+= Arg<EventHandler<MyEventArgs>>.Is.Anything); 

Presenter p = new Presenter(_viewMock);

_mockRepository.ReplayAll();

...

_mockRepository.VerifyAll();

Мне пришлось воспроизвести все, прежде чем я создал новый экземпляр Presenter.

Спасибо.

...