我制作了以下存根
_Service.Stub(s => s.Login(Arg<string>.Is.Anything, Arg<string>.Is.Anything, Arg<int>.Is.Anything, out ggg)).OutRef(55);
最后一个参数是out
类型的int
参数。
我想跟随Assert
_Service.AssertWasNotCalled(s => s.Login(Arg<string>.Is.Anything, Arg<string>.Is.Anything,Arg<int>.Is.Anything , ??????? ));
但我如何注意out
参数?
答案 0 :(得分:6)
“简单”使用:
_Service.AssertWasNotCalled(s => s.Login(
Arg<string>.Is.Anything,
Arg<string>.Is.Anything,
Arg<int>.Is.Anything ,
out Arg<int>.Out(10).Dummy
));
传递给Out
方法的值无关紧要(。Dummy
调用是重要的。)
答案 1 :(得分:3)
模拟断言通常适用于模拟而不是存根。因此,您可以重写代码以进行以下设置
_Service.Expect(s => s.Login(Arg<string>.Is.Anything, Arg<string>.Is.Anything, Arg<int>.Is.Anything, out ggg)).OutRef(55).Repeat.Never();
在 Assert 部分测试
进行验证_Service.VerifyAllExpectations();