我是单元测试和模拟数据的新手。我有2个嘲笑的回购,我已经设置了这样:
[Test]
public void TestRun()
{
_UserRepo.Setup(x => x.GetById(RequestCache, It.IsAny<Guid>())).Returns(new User
{
Id = Guid.NewGuid()
});
_repo.Setup(x => x.GetById<Company>(RequestCache, It.IsAny<Guid>())).Returns(new Company
{
Id = Guid.NewGuid()
});
var result = _query.Run(RequestCache);
Assert.NotNull(result);
Assert.IsFalse(result.HasErrorsOrWarnings());
_UserRepo.Verify(x=> x.GetById(RequestCache, It.IsAny<Guid>()), Times.Once);
_repo.Verify(x=> x.GetById<Company>(RequestCache, _id), Times.Once);
}
当我调试时,我表明我确实有一个随机guid的新用户,与公司相同。问题是,当我验证已经调用了repo时,我得到一个预期错误1但是为0。
_UserRepo.Verify(x=> x.GetById(RequestCache, It.IsAny<Guid>()), Times.Once);
_repo.Verify(x=> x.GetById<Company>(RequestCache, It.IsAny<Guid>()), Times.Once);
有什么建议吗?
由于