犀牛嘲笑树桩的历史
本文关键字:历史 犀牛 | 更新日期: 2023-09-27 18:22:05
我在接口上截尾了一个方法,想看看它被调用了什么参数,但这个方法被调用了好几次,我希望能够检查每个调用的参数。是否有一堆我可以检查的对存根的调用历史记录?
我的场景是这样的:
myStub.AssertWasCalled(stub => stub.SomeMethod(Arg<ISomeInterface>.Matches<ISomeInterface>(p => p.Mode == Mode.SomeEnum)))
您可以使用GetArgumentsForCallsMadeOn
。
GetArgumentsForCallsMadeOn返回一个二维对象数组,因此您需要进行强制转换才能获得所需的类型。
它是这样工作的:
public interface IDependency {
int DoSomething(SomeComplexType someComplexType,
int someInteger);
}
IList<object[]> argumentsSentToDoSomething =
dependency.GetArgumentsForCallsMadeOn(x => x.DoSomething(null, 0));