public async Task GetEncryptionKeyTest()

in DeviceBridgeTests/Providers/SecretsProviderTests.cs [176:219]


        public async Task GetEncryptionKeyTest()
        {
            using (ShimsContext.Create())
            {
                var realSecretValue = "realSecretValue";
                var realVersion = "v.1";
                var calledKvUrl = string.Empty;
                var calledSecretName = string.Empty;
                var calledVersion = string.Empty;
                Microsoft.Azure.KeyVault.Fakes.ShimKeyVaultClientExtensions.GetSecretAsyncIKeyVaultClientStringStringStringCancellationToken = (IKeyVaultClient kvc, string keyVaultUrl, string secretName, string version, CancellationToken c) =>
                {
                    var result = new SecretBundle();
                    result.Value = realSecretValue;

                    calledKvUrl = keyVaultUrl;
                    calledSecretName = secretName;
                    calledVersion = version;
                    return Task.FromResult(result);
                };
                Microsoft.Azure.KeyVault.Fakes.ShimKeyVaultClientExtensions.GetSecretAsyncIKeyVaultClientStringStringCancellationToken = (IKeyVaultClient kvc, string keyVaultUrl, string secretName, CancellationToken c) =>
                {
                    var result = new SecretBundle();
                    result.Value = realSecretValue;

                    calledKvUrl = keyVaultUrl;
                    calledSecretName = secretName;
                    return Task.FromResult(result);
                };

                // Test without version
                var bundle = await sp.GetEncryptionKey(logger);
                Assert.AreEqual(realSecretValue, bundle.Value);
                Assert.AreEqual(TestConstants.KeyvaultUrl, calledKvUrl);
                Assert.AreEqual(SecretsProvider.IotcEncryptionKey, calledSecretName);
                Assert.AreEqual(string.Empty, calledVersion);

                // Test with version
                bundle = await sp.GetEncryptionKey(logger, realVersion);
                Assert.AreEqual(realSecretValue, bundle.Value);
                Assert.AreEqual(TestConstants.KeyvaultUrl, calledKvUrl);
                Assert.AreEqual(SecretsProvider.IotcEncryptionKey, calledSecretName);
                Assert.AreEqual(realVersion, calledVersion);
            }
        }