2010-11-25 17 views
1

Je suis nouveau dans les tests unitaires et les moqueurs. Je dois convertir des tests unitaires dans mon projet actuel en utilisant Moq. Actuellement, les tests utilisent Nmock2. Pouvez-vous me aider à convertir ce code (en utilisant de CollectAction) avec l'aide Moq:Convertir le test NMock2 en 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>; 

Merci à l'avance.

Répondre

1

est le rappel de CollectAction Moq:

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

Grande réponse, merci. – iburlakov