如何在 "Will" 操作中使用 NMock3 方法参数
How can I use an NMock3 Method Parameter in a "Will" Action
我正在尝试模拟一个将异常作为参数的方法,并且在某些情况下可能会抛出该异常。有没有办法模拟这个,使得模拟方法做到这一点?
我正在计算类似下面的语法。
myMock.Expects.One.Method(mo => mo.ProcessException(null)).With(<capture exception>).Will(new ThrowAction(<captured exception>));
有办法吗?在这种情况下,我实际上知道我在期待什么类型的异常,所以理论上我可以重构它,但抛出调用的异常似乎更好。
您需要使用Collect.MethodArgument
mockPostalCodeChecker.Expects.One.Method(m => m.ProcessException(null)).With(<what you want>).Will(Collect.MethodArgument<Exception>(0, delegate(Exception excep) { throw excep; }));
我正在尝试模拟一个将异常作为参数的方法,并且在某些情况下可能会抛出该异常。有没有办法模拟这个,使得模拟方法做到这一点?
我正在计算类似下面的语法。
myMock.Expects.One.Method(mo => mo.ProcessException(null)).With(<capture exception>).Will(new ThrowAction(<captured exception>));
有办法吗?在这种情况下,我实际上知道我在期待什么类型的异常,所以理论上我可以重构它,但抛出调用的异常似乎更好。
您需要使用Collect.MethodArgument
mockPostalCodeChecker.Expects.One.Method(m => m.ProcessException(null)).With(<what you want>).Will(Collect.MethodArgument<Exception>(0, delegate(Exception excep) { throw excep; }));