Moq方法设置,无需指定参数列表

6
当设置一个Moq对象以返回特定值而不考虑输入参数时,我目前需要有效地编写完整的签名,例如:
Mock.Get(myThing).Setup(x => x.DoThing(It.IsAny(), It.IsAny(), It.IsAny>())).Returns(false)
如果有多个输入参数并且我不关心任何一个参数,这有点繁琐,那么有没有一种方法可以说It.IsAnyForAllInputParameters()?

2
那么关于该方法的重载,Moq应该如何处理它们? - Bernhard Hiller
哦,没错。那就是很长的参数列表了。你应该把它作为一个答案添加进去,我会给你点赞的。 - LordWilmore
1个回答

1

正如Bernhard Hiller在评论中指出的那样,如果可能的话,那么moq应该知道如何设置所有具有相同名称的方法。除非它们具有不同的返回类型,否则这不应该是一个问题:

void Sum(int a, int b, ref int result)
{
    result = a + b;
}

int Sum(int a, int b)
{
    return a + b;
}

如果您想设置Sum方法返回值为10,那么第一个Sum方法应该如何进行moq操作?


理想情况下,我们只需要在有多个同名方法时才需要指定参数。 - Sylvain Gantois

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接