Rhino可以将字典存根,这样无论使用什么键,都会返回相同的值吗?

时间:2010-02-05 17:03:39

标签: rhino-mocks

var fakeRoles = MockRepository.GenerateStub < IDictionary<PermissionLevel, string>>();
        fakeRoles[PermissionLevel.Developer] = "Developer";
        fakeRoles[PermissionLevel.DeveloperManager] = "Developer Manager";

这特定于该方法正在调用的内容,并且与我的单元测试无关。 我宁愿这样做:

fakeRoles.Stub(r => r[PermissionLevel.None]).IgnoreArguments().Return("Developer");

但我得到一个例外,告诉我直接设置属性。有没有办法告诉rhino只返回给予此存根IDictionary的任何键的相同值?

1 个答案:

答案 0 :(得分:2)

你要做的不是存根(在RhinoMock的理解中),你必须创建一个模拟:

var fakeRoles = MockRepository.GenerateMock < IDictionary<PermissionLevel, string>>();
fakeRoles.Expect(r => r[PermissionLevel.None]).IgnoreArguments().Return("Developer");