c# - 最小起订量设置函数抛出异常不起作用

标签 c# unit-testing moq

我有以下函数签名:

T SomeMethod(Expression<Func<T, string>> param1, 
             , params Expression<Func<T, object>>[] items);

我希望它在每次执行时都抛出异常。

我尝试进行以下设置:

myMock.Setup(x => x.SomeMethod(Moq.It.IsAny<Expression<Func<SomeClass, string>>>()))
      .Throws(new Exception());

find 一切正常,但是当我到达这个方法时它不会抛出异常(尽管该对象是我的模拟)。

我假设我的设置不正确。

一段时间以来我尝试了很多变体,现在我有点沮丧。

我会放更多的代码,但它是受限制的。我要上传的每篇文章都应该修改,所以请原谅我在信息方面的廉价。

希望这就足够了,有人可以帮助我。

最佳答案

看起来问题出在 params 参数中。尝试将其添加到设置中

myMock.Setup(x => x.SomeMethod(
         Moq.It.IsAny<Expression<Func<SomeClass, string>>>()),
         Moq.It.IsAny<Expression<Func<T, object>>[]>())
      ).Throws(new Exception());

关于c# - 最小起订量设置函数抛出异常不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16193655/

相关文章:

c# - 减少图像中的色彩深度不会减小文件大小吗?

c# - 如何识别调用存储过程

unit-testing - Akka.net Actors 的单元测试

c# - 即使子目录不存在,如何创建文件

c# - 在 html 中查找 body 标记结尾的最佳方法

c++ - 在 googletest 或 cppunit 下移动参数化测试

java - 带有mockito和多个返回值的模拟CSV阅读器

c# - 如何在模拟中为不同的输入返回不同的值?

c# - 用最小起订量模拟,试图将对象传递给具有多个参数的构造函数

c# - 使用 Mock.of 的对象的 Moq 返回值?