gpt4 book ai didi

c# - 在没有实现的情况下设置属性(类型接口(interface))

转载 作者:行者123 更新时间:2023-11-30 16:14:23 25 4
gpt4 key购买 nike

我正在创建一些单元测试,并想模拟一个服务,该服务返回一个 Thing 对象,该对象具有实现 IFileInformation 接口(interface)的 FileInformation 属性.

如何在不为此接口(interface)编写实现的情况下填充/模拟 Thing

public interface IFileInformation
{
string Name { get; set; }
}
public class Thing
{
public IFileInformation FileInformation { get; set; }
}

我正在使用 Moq用于我的单元测试的库。

最佳答案

好吧,这比我想象的要容易。

使用 Moq 模拟界面。

Mock<IFileInformation> fileInformation = new Mock<IFileInformation>();
fileInformation.SetupGet(x => x.Name).Returns("whatever.txt");

Thing serviceResult = new Thing();
serviceResult.FileInformation = fileInformation.Object;

关于c# - 在没有实现的情况下设置属性(类型接口(interface)),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20758293/

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