private void TestAddressingForConfig(string bucketName, RegionEndpoint regionEndpoint, bool?usePathStyle,
                                             bool useAccelerate, bool useDualstack, S3UsEast1RegionalEndpointValue s3EndpointValue, string expectedUri)
        {
            var clientConfig = new AmazonS3Config
            {
                RegionEndpoint               = regionEndpoint,
                UseAccelerateEndpoint        = useAccelerate,
                UseDualstackEndpoint         = useDualstack,
                USEast1RegionalEndpointValue = s3EndpointValue
            };

            if (usePathStyle.HasValue)
            {
                clientConfig.ForcePathStyle = usePathStyle.Value;
            }

            var client   = new MockS3Client(clientConfig);
            var response = client.ListObjects(new ListObjectsRequest
            {
                BucketName = bucketName
            });

            var expected = new Uri(expectedUri);
            var actual   = client.LastRequestUri;

            Assert.AreEqual(expected.AbsoluteUri, actual.AbsoluteUri);
        }
        public void GivenAConfigWithFlagSetAndAnEmptyEnvironmentVariableThenTheFlagIsNotAltered(S3UsEast1RegionalEndpointValue s3FlagValue)
        {
            var olds3EnvValue = Environment.GetEnvironmentVariable(AwsS3RegionalEndpointEnvironmentVariable);

            try
            {
                Environment.SetEnvironmentVariable(AwsS3RegionalEndpointEnvironmentVariable, "");
                var config = new AmazonS3Config()
                {
                    USEast1RegionalEndpointValue = s3FlagValue
                };
                Assert.AreEqual(s3FlagValue, config.USEast1RegionalEndpointValue);
            }
            finally
            {
                Environment.SetEnvironmentVariable(AwsS3RegionalEndpointEnvironmentVariable, olds3EnvValue);
            }
        }
        public void GivenAConfigWithFlagSetThenTheEnvironmentVariableIsNotUsed(string s3EnvValue, S3UsEast1RegionalEndpointValue configFlagValue, S3UsEast1RegionalEndpointValue expectedValue, string expectedEndpointSystemName)
        {
            var olds3EnvValue = Environment.GetEnvironmentVariable(AwsS3RegionalEndpointEnvironmentVariable);

            try
            {
                Environment.SetEnvironmentVariable(AwsS3RegionalEndpointEnvironmentVariable, s3EnvValue);
                var config = new AmazonS3Config()
                {
                    RegionEndpoint = Amazon.RegionEndpoint.USEast1,
                    USEast1RegionalEndpointValue = configFlagValue
                };
                // Simulate a first service call
                config.DetermineServiceURL();
                Assert.AreEqual(expectedValue, config.USEast1RegionalEndpointValue);
                Assert.AreEqual(expectedEndpointSystemName, config.RegionEndpoint.SystemName);
            }
            finally
            {
                Environment.SetEnvironmentVariable(AwsS3RegionalEndpointEnvironmentVariable, olds3EnvValue);
            }
        }
 public void AddressingTests(string bucketName, RegionEndpoint regionEndpoint, bool?usePathStyle,
                             bool useAccelerate, bool useDualstack, S3UsEast1RegionalEndpointValue s3EndpointValue, string expectedUri)
 {
     TestAddressingForConfig(bucketName, regionEndpoint, usePathStyle, useAccelerate, useDualstack, s3EndpointValue, expectedUri);
 }
示例#5
0
 public void SetS3UsEast1RegionalEndpointValue(S3UsEast1RegionalEndpointValue value)
 {
     this.s3UsEast1RegionalEndpointValue = value;
 }