缺少MockRepository.GenerateStub的结果的Stub(扩展)方法<t>()</t>

时间:2013-11-10 03:36:41

标签: rhino-mocks

我一直试图恢复在测试中使用Rhino Mocks的旧.NET项目。 我正在引用最新的3.6版本,但我似乎缺少对扩展/帮助器的引用......或者......?

我添加了类似于以下代码的代码 - 来自他们的“文档”,并且在很多地方也被引用。问题是“Stub”不是方法也不是扩展方法(不会使用此消息进行编译):

var stubUserRepository = MockRepository.GenerateStub<IUserRepository>();
var stubbedSmsSender = MockRepository.GenerateStub<ISmsSender>();

var theUser = new User{HashedPassword = "this is not hashed password"};    

// following Stub method does not exist.
stubUserRepository.Stub(x => x.GetUserByName("ayende")).Return(theUser);

从查看MockRepository.GenerateStub的返回结果T,Stub必须是一个扩展方法。我错过了什么?

1 个答案:

答案 0 :(得分:1)

D'哦! 我完全限定了对Rhino.Mocks命名空间中的类的其他引用 - 哪些方法与扩展方法不兼容: - )

我错过了“使用”声明。

using Rhino.Mocks // ... was missing
var foo = Rhino.Mocks.MockRepository.GenerateStub<IFoo>();

// following Stub method does not exist.
foo.Stub(x => x.bar())...

我希望这有助于其他人。