如果我想模拟一个返回一个字符串的类,该字符串用于确定while循环是否应该继续(想象读取字符串!= null),我该如何设置期望值.我尝试过以下方法:
provider.Reader.Expect(r => r.ReadLine()).Return("1,10,20");
provider.Reader.Expect(r => r.ReadLine()).Return(null);
Run Code Online (Sandbox Code Playgroud)
但是当它在同一个方法中被调用两次时,它会在两种情况下返回第一个字符串,而我希望它在第二次调用时返回第二个值(null).
小智 33
我想你可以在你目前使用的语法结束时坚持重复.
provider.Reader.Expect(r => r.ReadLine()).Return("1,10,20").Repeat.Once();
provider.Reader.Expect(r => r.ReadLine()).Return(null).Repeat.Once();
Run Code Online (Sandbox Code Playgroud)
要么
provider.Reader.Expect(r => r.ReadLine()).Return("1,10,20").Repeat.Once();
provider.Reader.Expect(r => r.ReadLine()).Return(null);
Run Code Online (Sandbox Code Playgroud)
如果你有第二次通话以外的任何电话,你想要使用第二个期望.