gpt4 book ai didi

.net - 模拟方法返回 null

转载 作者:行者123 更新时间:2023-12-02 05:10:05 26 4
gpt4 key购买 nike

我的Silverlight项目中有一个简单的测试方法:

[TestMethod]
[Tag("User")]
public void ViewModel_NewUserAdded_DefaultCulturesLoaded()
{
//setup
Mock<INameService> mockNameService = new Mock<INameService>();
MainViewModel viewModel = new MainViewModel();
mockNameService
.Setup(m => m.DefaultCultures(It.IsAny<Action<LoadOperation<kk_mp_name>>>()))
.Returns(new Mock<OperationBase>(null).Object);
viewModel.ContextName = mockNameService.Object;

//action
Messenger.Default.Send(-1, "New User Added");

//verify
mockNameService.Verify(
(mo) => mo.DefaultCultures(It.IsAny<Action<LoadOperation<kk_mp_name>>>()),
Times.Exactly(1));
}

DefaultCultures 方法总是返回 null 而不是新的模拟对象。我做错了什么?

最佳答案

从你的评论来看,它看起来像

var mockNameService = new Mock<INameService>(MockBehavior.Strict);

没有多大帮助。

所以我的下一个问题是问你为什么要在这里传递 Null。

new Mock<OperationBase>(null).Object

您可以发布 OperationBase 的代码吗?

关于.net - 模拟方法返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6607265/

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