【问题标题】:Setting expectations on MoQ设定对 MoQ 的期望
【发布时间】:2011-10-30 04:53:42
【问题描述】:

我正在使用 MoQ 来测试我拥有的一些控制器。我无法设定期望。这是我的代码:

        var rep = new Mock<IUserRepository>();
        rep.Setup(r => r.Save());

问题是我的Save() 方法需要一个User 对象,我无法在期望中设置它,因为控制器将创建它的一个实例。是否可以在不传递特定参数的情况下设置期望值,无论传递什么参数都只检查方法是否被调用?

【问题讨论】:

    标签: parameters installation moq verify expectations


    【解决方案1】:

    你能解释一下“Save() 方法需要一个用户对象”是什么意思吗?它是否期望它作为参数?如果是这样,您可以在设置中定义:

    rep.Setup(r =&gt; r.Save(It.IsAny&lt;SomeObjectType&gt;())

    它会接受任何对象,只要它的类型是SomeObjectType

    如果您的意思是别的,那么请显示预期行为的代码示例。

    【讨论】:

    • 没错。我自己才发现的。我正在尝试使用 It.IsAny() 而我的方法需要一个用户参数。我使用 It.IsAny() 并且它有效。非常感谢!
    猜你喜欢
    • 2011-03-08
    • 2011-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-15
    • 2023-03-12
    • 2020-08-13
    相关资源
    最近更新 更多