小编Vic*_*hez的帖子

如何使用 Moq Azure Key Vault 进行单元测试

我需要模拟 Key Vault 的端点,以便知道我是否调用该函数来获取 Key Vault 一次。

我正在使用 C# 和 Moq(框架)开发它来进行测试。

界面如下:

public interface IKeyVaultConnection
{
    string GetKeyVaultValue(string variableName);
}
Run Code Online (Sandbox Code Playgroud)
 public class KeyVaultConnection
    {
        public KeyVaultClient keyVaultClient;
        private string endpointKeyVault;

        public KeyVaultConnection(string keyVaultAddress = "DefaultEndpoint")
        {
            AzureServiceTokenProvider azureServiceTokenProvider = new AzureServiceTokenProvider();
            keyVaultClient = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback));
            endpointKeyVault = $"https://{ keyVaultAddress }.vault.azure.net";
        }

        private async Task<string> AsyncGetSecretValue(string keyName)
        {
            var secret = await keyVaultClient.GetSecretAsync($"{endpointKeyVault}/secrets/{ keyName }")
                    .ConfigureAwait(false);

            return secret.Value;
        }

        public string GetKeyVaultValue(string variableName)
        {
            Task<string> task = Task.Run(async () => …
Run Code Online (Sandbox Code Playgroud)

c# unit-testing moq azure azure-keyvault

1
推荐指数
1
解决办法
9934
查看次数

标签 统计

azure ×1

azure-keyvault ×1

c# ×1

moq ×1

unit-testing ×1