gpt4 book ai didi

c# - NMock3 如何模拟没有参数的方法?

转载 作者:太空宇宙 更新时间:2023-11-03 13:21:07 25 4
gpt4 key购买 nike

我有一个方法,其中一个参数为 out,我找到了一个关于如何在 NMock2 中模拟它的引用。然而,NMock3 似乎有重大变化,打破了 NMock2 的解决方案。这是我的方法的接口(interface)签名:

 IEnumerable<Video> DeletedVideos(int index, int pageSize, out int totalCount);

最佳答案

这是我经过反复试验找到的解决方案

_mockObject
.Expects.One.Method(m =>
m.DeletedVideos(-1, -1, out ignoredValue)) //values are ignored
.With(0, 20, Is.Out) //set the values manually
.Will(new SetIndexedParameterAction(2, 100) , Return.Value(deletedVideos));

当从我的 Controller 调用此方法时,NMock3 将传递 0、20 作为前两个参数 (Int32),并返回 IEnumerable,第三个 Int 为 100。

要使用 SetIndexedParameterAction,您需要添加命名空间“NMock.Actions”。

new SetIndexedParameterAction (2, 100) 其中 2 是参数的索引,100 是要返回的值。

Return.Value(deletedVideos) 是方法要返回的值。

关于c# - NMock3 如何模拟没有参数的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24129858/

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