【发布时间】:2016-05-28 03:58:16
【问题描述】:
这有点奇怪。我试图存根一个有参数的方法,我不关心参数是什么,所以我忽略了参数。它看起来像这样:
List<Foo> ignored;
A.CallTo(() => fake.Method(out ignored))
.Returns(something);
当像这样调用存根方法时,这没有任何问题:
List<Foo> target;
var result = service.Method(out target);
但是,当 target 预初始化时,它不起作用。例如:
List<Foo> target = new List<Foo>();
var result = service.Method(out target);
当我检查假货上的Tag 时,我可以看到输出参数被记录为<NULL>,所以我怀疑当输出目标已经设置为某个值时它们不匹配。我尝试将测试中的ignored 设置为new List<Foo>(),也尝试了A<List<Foo>>.Ignored,但对结果都没有任何影响。
所以我的问题是,如果 out 参数目标已经有值,是否有人知道如何存根不带参数的方法?
【问题讨论】:
标签: c# fakeiteasy