如何为Linq查询设置期望

时间:2015-08-28 14:08:18

标签: c# linq unit-testing rhino-mocks xunit

使用 Rhino Mocks

var list = MockRepository.GenerateMock<List<Foo>>();
list.Expect(e => e.Any(Arg<Func<Foo, bool>>.Is.Anything)).Return(false);

它抛出

  

ArgumentNullException:值不能为null。参数名称:谓词

我怎么写得好呢?

1 个答案:

答案 0 :(得分:1)

方法AnyExtension方法,这意味着该方法是static方法。您无法使用static假冒Rhino Mocks方法。

将这样的期望置于断言中是一个常见的错误。

实际上你不必伪造List(它是一个DS,这意味着行为不会影响测试),只需创建一个真实类的实例并使用它,然后验证空列表的流程表现正确。(对应该发生的事情做Assert