public void TestGetStorageConfigurationBadPublicUrlRoot() { var noBucketStorageOptions = new PiranhaS3StorageOptions { BucketName = ValidUnitTestBucketName, KeyPrefix = ValidUnitTestKeyPrefix, PublicUrlRoot = "notaurl" }; try { IServiceCollection services = new ServiceCollection(); var storageFactory = new S3StorageFactory(noBucketStorageOptions, TestFixture.FakeAwsOptions); Func <IServiceProvider, object> factory = storageFactory.CreateS3Storage; services.Add(new ServiceDescriptor(typeof(S3Storage), factory, ServiceLifetime.Singleton)); var serviceProvider = services.BuildServiceProvider(); serviceProvider.GetService <S3Storage>(); Assert.False(true, "Bad PublicUrlRoot did not throw an exception"); } catch (Exception ex) { Assert.IsAssignableFrom <FlagscriptConfigurationException>(ex); } }
public void TestGetStorageConfigurationEnvVarOptions() { try { Environment.SetEnvironmentVariable(PiranhaS3StorageOptions.BucketEnvironmentVariable, "buck"); Environment.SetEnvironmentVariable(PiranhaS3StorageOptions.KeyPrefixEnvironmentVariable, "kp"); Environment.SetEnvironmentVariable(PiranhaS3StorageOptions.UrlRootEnvironmentVariable, "http://flagscript.technology"); IServiceCollection services = new ServiceCollection(); var storageFactory = new S3StorageFactory(null, TestFixture.FakeAwsOptions); Func <IServiceProvider, object> factory = storageFactory.CreateS3Storage; services.Add(new ServiceDescriptor(typeof(S3Storage), factory, ServiceLifetime.Singleton)); var serviceProvider = services.BuildServiceProvider(); var s3Storage = serviceProvider.GetService <S3Storage>(); Assert.Equal("buck", s3Storage.StorageOptions.BucketName); Assert.Equal("kp", s3Storage.StorageOptions.KeyPrefix); Assert.Equal("http://flagscript.technology", s3Storage.StorageOptions.PublicUrlRoot); } finally { Environment.SetEnvironmentVariable(PiranhaS3StorageOptions.BucketEnvironmentVariable, null); Environment.SetEnvironmentVariable(PiranhaS3StorageOptions.KeyPrefixEnvironmentVariable, null); Environment.SetEnvironmentVariable(PiranhaS3StorageOptions.UrlRootEnvironmentVariable, null); } }
public void TestGetStorageConfigurationStorageOptions() { IServiceCollection services = new ServiceCollection(); var storageFactory = new S3StorageFactory(null, TestFixture.FakeAwsOptions); services.AddSingleton(TestFixture.MainConfiguration); Func <IServiceProvider, object> factory = storageFactory.CreateS3Storage; services.Add(new ServiceDescriptor(typeof(S3Storage), factory, ServiceLifetime.Singleton)); var serviceProvider = services.BuildServiceProvider(); var s3Storage = serviceProvider.GetService <S3Storage>(); Assert.Equal("BucketNameTest", s3Storage.StorageOptions.BucketName); }
public void TestGetStorageConfigurationAwsOptions() { IServiceCollection services = new ServiceCollection(); var storageFactory = new S3StorageFactory(ValidStorageOptions, null); services.AddSingleton(TestFixture.MainConfiguration); Func <IServiceProvider, object> factory = storageFactory.CreateS3Storage; services.Add(new ServiceDescriptor(typeof(S3Storage), factory, ServiceLifetime.Singleton)); var serviceProvider = services.BuildServiceProvider(); var s3Storage = serviceProvider.GetService <S3Storage>(); Assert.Equal("unit-test-profile", s3Storage.AwsOptions.Profile); }
public void TestGetStorageBothPassedInOptions() { IServiceCollection services = new ServiceCollection(); var storageFactory = new S3StorageFactory(ValidStorageOptions, TestFixture.FakeAwsOptions); Func <IServiceProvider, object> factory = storageFactory.CreateS3Storage; services.Add(new ServiceDescriptor(typeof(S3Storage), factory, ServiceLifetime.Singleton)); var serviceProvider = services.BuildServiceProvider(); var s3Storage = serviceProvider.GetService <S3Storage>(); Assert.Equal(ValidStorageOptions.BucketName, s3Storage.StorageOptions.BucketName); Assert.Equal(ValidStorageOptions.KeyPrefix, s3Storage.StorageOptions.KeyPrefix); Assert.Equal(ValidStorageOptions.PublicUrlRoot, s3Storage.StorageOptions.PublicUrlRoot); Assert.Same(TestFixture.FakeAwsOptions, s3Storage.AwsOptions); }