gpt4 book ai didi

c# - 带有 Action 参数的最小起订量

转载 作者:太空狗 更新时间:2023-10-29 20:58:00 25 4
gpt4 key购买 nike

我正在尝试使用 Moq 3.x,它的效果非常好。但是,我有一个问题,我不知道如何解决。给定

public interface ITestSpec
{
bool Run(Action<string, string> onIncorrectResponse);
}

我正在尝试以下操作:

var passingTestSpec = new Mock<ITestSpec>();
passingTestSpec
.Setup(m => m.Run(null))
.Returns(true);

Action<string, string> fakeAction =
(expected, actual) => { throw new Exception("Should not run"); };

Assert.IsTrue(passingTestSpec.Object.Run(fakeAction));

我的问题是任何对 passingTestSpec.Object.Run(... some action ...) 的调用都会返回 false。 Moq 库似乎试图将操作与我在 Setup() 调用中传递给 Run() 的参数相匹配,但失败了。实际上,我在 Run() 调用中执行了什么操作并不重要……它仍然返回 false。

有什么想法吗?

[编辑] 我刚刚发现了一些东西;如果我用

替换设置行
  .Setup(m => m.Run(fakeAction))

测试通过。但是,我不知道将调用 .Run() 方法的什么操作,因此这不是解决方案。有人知道 It.IsAny 等同于操作吗?

最佳答案

有什么问题:

It.IsAny<Action<string, string>>()

关于c# - 带有 Action 参数的最小起订量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/875048/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com