public void PathNotExists_Optional() { var secretsManager = new Mock <IAmazonSecretsManager>(); var secretName = "PathNotExists_Optional"; secretsManager.Setup( m => m.GetSecretValueAsync( It.Is <GetSecretValueRequest>(r => r.VersionStage == "AWSCURRENT" && r.VersionId == null && r.SecretId == secretName), It.IsAny <CancellationToken>())) .ThrowsAsync(new ResourceNotFoundException("")); var source = new AwsSecretsManagerConfigurationSource( secretName, true, secretsManager.Object); var builder = new ConfigurationBuilder(); builder.Add(source); var configuration = builder.Build(); Assert.AreEqual(0, configuration.AsEnumerable().Count()); Assert.AreEqual(0, configuration.GetChildren().Count()); }
public void PathExists_NotOptional() { var secretsManager = new Mock <IAmazonSecretsManager>(); var secretName = "PathExists_NotOptional"; var result = @"{""key"":""value"",""section"":{""subkey"":""subvalue""}}"; secretsManager.Setup( m => m.GetSecretValueAsync( It.Is <GetSecretValueRequest>(r => r.VersionStage == "AWSCURRENT" && r.VersionId == null && r.SecretId == secretName), It.IsAny <CancellationToken>())) .ReturnsAsync( new GetSecretValueResponse { SecretString = result }); var source = new AwsSecretsManagerConfigurationSource( secretName, false, secretsManager.Object); var builder = new ConfigurationBuilder(); builder.Add(source); var configuration = builder.Build(); Assert.AreEqual(3, configuration.AsEnumerable().Count()); Assert.AreEqual(2, configuration.GetChildren().Count()); Assert.AreEqual("value", configuration["key"]); Assert.AreEqual("subvalue", configuration.GetSection("section")["subkey"]); }
public void ThrowsException_Optional() { var secretsManager = new Mock <IAmazonSecretsManager>(); var secretName = "ThrowsException_Optional"; secretsManager.Setup( m => m.GetSecretValueAsync( It.Is <GetSecretValueRequest>(r => r.VersionStage == "AWSCURRENT" && r.VersionId == null && r.SecretId == secretName), It.IsAny <CancellationToken>())) .ThrowsAsync(new Exception("")); var source = new AwsSecretsManagerConfigurationSource( secretName, true, secretsManager.Object); var builder = new ConfigurationBuilder(); builder.Add(source); Assert.ThrowsException <Exception>(() => builder.Build()); }