1

我已经在接口上存根了一个方法,并想看看它是用什么参数调用的,但是这个方法被调用了几次,我希望能够检查每个调用的参数。是否有一堆我可以检查的对存根的调用历史记录?

我的情况是这样的:

myStub.AssertWasCalled(stub => stub.SomeMethod(Arg<ISomeInterface>.Matches<ISomeInterface>(p => p.Mode == Mode.SomeEnum)))
4

1 回答 1

1

您可以使用GetArgumentsForCallsMadeOn.

GetArgumentsForCallsMadeOn 返回一个二维对象数组,因此您需要进行强制转换才能获得您期望的类型。

它是这样工作的:

  public interface IDependency {
      int DoSomething(SomeComplexType someComplexType,
                            int someInteger);
    }

    IList<object[]> argumentsSentToDoSomething = 
dependency.GetArgumentsForCallsMadeOn(x => x.DoSomething(null, 0));
于 2012-01-30T14:53:46.487 回答