我有以下方法:使用最小起订量来嘲笑只有一些方法
public CustomObect MyMethod()
{
var lUser = GetCurrentUser();
if (lUser.HaveAccess)
{
//One behavior
}
else
{
//Other behavior
}
//return CustomObject
}
我想嘲笑IMyInterface.GetCurrentUser
,这样当调用MyMethod
我能得到的代码路径之一进行检查。如何用Moq做到这一点?
我做以下的事情:
var moq = new Mock<IMyInterface>();
moq.Setup(x => x.GetCurrentUser()).Returns(lUnauthorizedUser);
//act
var lResult = moq.Object.MyMethod();
但由于某些原因lResult
总是null
,当我试图进入MyMethod
在调试我总是跳到下一个声明。
你有什么`lUnauthorizedUser`初始化?我会想象你会想`moq.Setup(x => x.GetCurrentUser())。返回(新用户(){HaveAccess = false});` – 2011-01-22 22:30:47
泰勒,当然我是在上面的代码中设置它,只是没有贴上它来保持代码简短。 – 2011-01-23 04:08:51