J'ai le code suivant (simplifié).Comment mocker appel de méthode d'une autre classe dans Rhino Mock AAA?
public class OrderProcessor
{
public virtual string PlaceOrder(string test)
{
OrderParser orderParser = new OrderParser();
string tester = orderParser.ParseOrder(test);
return tester + " here" ;
}
}
public class OrderParser
{
public virtual string ParseOrder(string test)
{
if (!string.IsNullOrEmpty(test.Trim()))
{
if (test == "Test1")
return "Test1";
else
{
return "Hello";
}
}
else
return null;
}
}
Mon test est la suivante -
public class OrderTest
{
public void TestParser()
{
// Arrange
var client = MockRepository.GenerateMock<OrderProcessor>();
var spec = MockRepository.GenerateStub<OrderParser>();
spec.Stub(x => x.ParseOrder("test")).IgnoreArguments().Return("Test1");
//How to pass spec to client so that it uses the same.
}
}
Maintenant, comment puis-je tester le client afin qu'il utilise la méthode moqué de OrderParser. Je peux mock le OrderParser mais comment puis-je passer cela à la classe mocked orderProcessor?
Faites-le moi savoir s'il vous plaît.
Merci d'avance.