如何解决如何在Nunit中起订DataFactoryManagementClient?
.net核心项目。我的存储库中有一种如下所示的方法。
public DataFactoryManagementClient InitiateConnection(AuthenticationConfig authenticationConfig);
public async Task<List<MyList>> MyMethod(IEnumerable<FileEntity> fileEntities)
{
DataFactoryManagementClient dataFactoryManagementClient = azureDataFactoryRepository.InitiateConnection(_authenticationConfig);
//rest of the code
}
现在我正在为上述方法编写单元测试用例。
[Test]
public async Task Mytest()
{
azureDataFactoryRepository.Setup(
x => x.InitiateConnection(
It.IsAny<AuthenticationConfig>())).Returns(new DataFactoryManagementClient());
//rest of the code
}
在上面的代码中,我返回了新的DataFactoryManagementClient(),但是由于保护级别的原因,它说错误Datafactorymanagementclient.Datafactorymanagementclient(params DelegateHandler []))不可用。所以我很困惑我是否在做正确的事?有人可以帮我解决这个问题吗?任何帮助,将不胜感激。谢谢
解决方法
您可以使用IDataFactoryManagementClient
作为InitiateConnection
方法的返回类型,并在设置(测试方法)中通过以下代码返回IDataFactoryManagementClient
的模拟物:
[Test]
public async Task Mytest()
{
var dataFactoryManagementClientMock = new Mock<IDataFactoryManagementClient>();
azureDataFactoryRepository.Setup(
x => x.InitiateConnection(
It.IsAny<AuthenticationConfig>())).Returns(dataFactoryManagementClientMock.Object);
//rest of the code
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。