示例#1
0
        public void ShouldNotFindConfigInCollection()
        {
            var collection = new SecretConfigCollection
            {
                Items = new [] { new SecretConfig {
                                     Name = "test", Region = "us-east-2", SecretId = "a secret"
                                 } }
            };

            var    systemUnderTest = new SecretProvider(collection, manager.Object);
            Action act             = () => systemUnderTest.GetAwsSecret("fail");

            act.Should().Throw <SecretException>();
        }
示例#2
0
        public void ShouldGetSecret()
        {
            const string configName = "test";
            var          collection = new SecretConfigCollection
            {
                Items = new [] { new SecretConfig {
                                     Name = configName, Region = "us-east-2", SecretId = "a secret"
                                 } }
            };

            var systemUnderTest = new SecretProvider(collection, manager.Object);
            var actual          = systemUnderTest.GetAwsSecret(configName);

            actual.Should().NotBeNull();
            actual.Should().BeAssignableTo <CachingSecret>();
        }
示例#3
0
 public static IServiceCollection AddLazySecretProvider(this IServiceCollection collection, SecretConfigCollection secretConfigCollection)
 {
     collection.AddAWSService <IAmazonSecretsManager>();
     collection.AddSingleton <ILazyProvider <ISecretProvider> >(provider =>
                                                                new LazyProvider <ISecretProvider>(() =>
                                                                                                   new SecretProvider(secretConfigCollection, provider.GetService <IAmazonSecretsManager>())));
     return(collection);
 }