gpt4 book ai didi

c# - 断言没有方法被调用

转载 作者:行者123 更新时间:2023-11-30 12:26:18 24 4
gpt4 key购买 nike

如何断言未调用 stub /模拟对象的任何方法?对于单个方法,它相当简单,只需调用 Stub(x => x.METHOD()).Repeat.Never() 但如果你有一堆方法或大量重载方法,它会变得不方便。

是否有解决此问题的巧妙方法?

最佳答案

我还没有真正使用过 rhino-mocks,但是正如@Lee 在他的评论中所建议的那样,您应该能够在使用 StrictMock 之后达到您想要的效果,而无需任何其他期望。因此,给出以下测试:

public void TestStrickMock() {        
var mockRepo = new MockRepository();

// Create a StrictMock for the IDummy interface
var mock = mockRepo.StrictMock<IDummy>();

// Switch the mode of the mock repo from record to replay
mockRepo.ReplayAll();

// Invoke one of the methods on our mocked instance
mock.Method1();
}

此测试将失败,因为调用了 Method1,但尚未设置调用预期。它因错误而失败:

TestStrickMock: Rhino.Mocks.Exceptions.ExpectationViolationException : IDummy.Method1(); Expected #0, Actual #1.

关于c# - 断言没有方法被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29416053/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com