rhino-mocks stub 和这里的期望有什么区别:在我看来它们的行为完全相同?
mockContext.Stub(x => x.Find<Blog>())
.Return(new List<Blog>()
{
new Blog() { Id = 1, Title = "Test" }
}.AsQueryable());
mockContext.Expect(x => x.Find<Blog>())
.Return(new List<Blog>()
{
new Blog(){Id = 1,Title = "Title"},
new Blog(){Id=2,Title = "no"}
}.AsQueryable());
最佳答案
Stub()
定义 stub 对象的行为。
Expect()
定义模拟对象的行为和期望。
因此,如果您需要检查模拟方法是否被调用,您应该使用Expect
:
var mockContext = MockRepository.GenerateMock<IContext>();
mockContext.Expect(x => x.Find<Blog>()).Return(new List<Blog>());
现在,在测试操作完成后,您可以验证是否满足期望:
mockContext.VerifyAllExpectations();
如果您需要 stub 方法行为,可以使用 Stub()
:
var mockContext = MockRepository.GenerateStub<IContext>();
mockContext.Stub(x => x.Find<Blog>()).Return(new List<Blog>());
关于mocking - rhino-mocks stub 和期望有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13646038/