var callArgs = new List<string>();
mock.Setup(foo => foo.DoSomething(It.IsAny<string>()))
.Returns(true)
.Callback((string s) => callArgs.Add(s));
类似地,我们可以为列表参数做回调
var callArgs = new List<string>();
mock.Setup(foo => foo.DoSomething(It.IsAny<List<string>>()))
.Returns(true)
.Callback((List<string> s) => callArgs.AddRange(s));
如果不是这样,这是否可能?
var ex = new List();myrmock.setup(x => x.foo(it.isany>(),it.isany>(),it.isany())) 。
我没有在EX列表中获得任何东西。
是的,您可以完全按照您的描述。
或者您可以使用此格式:
var callArgs = new List<string>();
mock.Setup(foo => foo.DoSomething(It.IsAny<List<string>>()))
.Returns(true)
.Callback<List<string>>(s => callArgs.AddRange(s));
https://github.com/moq/moq4/wiki/quickstart