0

我有以下

var objSet = new DynamicMock(typeof(IObjectSet<Nationality>));
objSet.ExpectAndReturn("GetAll", new List<Nationality>
{
 new Nationality 
 {
    //obj init here
 },
 new Nationality 
 {
    //obj init here
 }
}.AsQueryable());

效果很好(我可以调用 blah.GetAll() 并得到预期的列表)。

我想做的(如果可能的话?)是告诉另一个 DynamicMock 期望具有以下签名的方法

obj.CreateObjectSet<RandomCustomType>()

但我不确定如何包含/配置调用以期望“ <Type>”。

4

1 回答 1

1

我很确定NMock 1.x不支持通用方法,并且不再受支持。如果迁移到 NMock 之外的另一个模拟框架,它具有类型化接口,而不是基于硬编码的字符串,该怎么办?
在 Rhino Mocks(例如)中,您可以按如下方式执行此操作(示例取自另一个 StackObverflow 问题):

  var fakeSession = MockRepository.GenerateMock<ISession>();
  fakeSession.Expect(s => s.Query<SomeClass>());
于 2011-09-29T19:12:34.830 回答