9

我有以下函数签名:

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());

一切正常,但是当我到达此方法时,它不会引发异常(尽管该对象是我的模拟对象)。

我假设我的设置不正确。

我尝试了很多变化,现在我有点沮丧。

我会放更多代码,但它受到限制。我想上传的每件作品都应该改变,所以请原谅我对信息的吝啬。

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

4

1 回答 1

12

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

myMock.Setup(x => x.SomeMethod(
         Moq.It.IsAny<Expression<Func<SomeClass, string>>>()),
         Moq.It.IsAny<Expression<Func<T, object>>[]>())
      ).Throws(new Exception());
于 2013-04-24T13:48:14.797 回答