【发布时间】:2010-09-26 15:09:26
【问题描述】:
我正在尝试在带有 VB.Net 的 Rhino Mocks 中使用 AAA 语法来验证一个方法是否只被调用了一次。我似乎无法正确处理。使用此代码,如果存储库被调用两次,则在第二次调用时它不返回任何内容,并且测试通过。当调用 VerifyAllExpectations 时,我预计测试会失败。
<TestMethod()>
Public Sub GetDataCallsRepositoryOneTime()
Dim repository As IDataRepository = MockRepository.GenerateMock(Of IDataRepository)()
Dim cacheRepository As New CachingDataRepository(repository)
Dim results1 As IEnumerable(Of DataItem)
Dim results2 As IEnumerable(Of DataItem)
'verify that the base repository was asked for its data one time only
repository.Expect(Function(x) x.GetData(1)).Return(GetSampleData).Repeat.Once()
results1 = cacheRepository.GetData(1)
results2 = cacheRepository.GetData(1)
sdr.VerifyAllExpectations()
End Sub
【问题讨论】:
-
你是用vb的VS2008还是VS2010?
-
我正在使用 Visual Studio 2010,针对我的测试项目的 4.0 框架,并针对我正在测试的项目的 3.5 框架。
标签: vb.net unit-testing rhino-mocks