Конвертировать тест NMock2 в Moq - PullRequest
1 голос
/ 25 ноября 2010

Я новичок в модульном тестировании и издевательстве.Я должен конвертировать модульные тесты в моем текущем проекте с использованием Moq.В настоящее время тесты используют Nmock2.Можете ли вы помочь мне с преобразованием этого кода (используя CollectAction) с использованием Moq:

Action<IScanFolder> publish;
Mockery mocks = new Mockery();
this.mockChannel= mocks.NewMock<IChannel>();
...
CollectAction collect = new CollectAction(1);
Expect.Once.On(mockChannel).Method("Subscribe").
    With(p1, NMock2.Is.NotNull).
    Will(collect);

...

mocks.VerifyAllExpectationsHaveBeenMet();
publish = collect.Parameter as Action<ISomeInterface>;

Заранее спасибо.

1 Ответ

1 голос
/ 25 ноября 2010

Обратный вызов - это Moq's CollectAction:

Action<ISomeInterface> publish;    
mockChannel.Setup(c => c.Subscribe(p1, It.IsAny<TArg2>())).Callback((arg1, arg2) => publish = arg2)
...