gpt4 book ai didi

c# - 如何使用 Moq 模拟使属性在设置时抛出异常?

转载 作者:太空狗 更新时间:2023-10-30 00:44:44 28 4
gpt4 key购买 nike

我正在努力让一些遗留代码接受测试,我们正在使用 Moq 4 进行隔离。在 set {} 组件中有一个类具有带验证的属性。我需要它在调用我的一项测试时抛出异常,但我无法做到这一点。我尝试了以下方法:

fakeNetwork
.Setup(n => n.IpAddress)
.Throws(new SystemNotFoundException("1.1.1.1");

没有抛出异常。

fakeNetwork
.SetupSet(n => n.IpAddress)
.Throws(new SystemNotFoundException("1.1.1.1");

此用法已过时。替代方法是 .SetupSet(Action),但我不确定如何执行引发异常的操作。我们将警告视为错误,所以我不知道这是否可行,但由于无论如何我都无法使用过时的版本,所以我没有尝试关闭检查。

任何提示都会非常有帮助!

最佳答案

改编自Moq docs

mock.SetupSet(foo => foo.Name = "foo").Throws<ArgumentException>();

关于c# - 如何使用 Moq 模拟使属性在设置时抛出异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7202111/

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