我有以下界面:
public interface IOuputDestination
{
void Write(String s);
}
在我的单元测试中,我像这样模拟它:
var outputDestination = A.Fake<IOutputDestination>();
我想要做的是拦截 Write 方法,以便它使用我在测试中定义的自定义实现。像这样的东西:
String output = "";
A.CallTo(() => outputDestination.Write(A<String>.Ignored)).Action(s => output += s);
//Is something like this even possible ? ----^
此处该Action
方法不存在,但我希望将传入的任何参数outputDestination.Write
重定向到我的自定义操作。这可以使用 FakeItEasy 吗?如果没有,是否有另一个允许这种行为的模拟框架?