@@ -35,9 +35,11 @@ import software.amazon.awssdk.services.s3.model.ListObjectsV2Response
35
35
import software.amazon.awssdk.services.s3.model.ObjectIdentifier
36
36
import software.amazon.awssdk.services.s3.model.PutObjectRequest
37
37
import software.amazon.awssdk.services.s3.model.PutObjectResponse
38
+ import software.aws.toolkits.core.region.AwsRegion
38
39
import software.aws.toolkits.core.utils.delegateMock
39
40
import software.aws.toolkits.jetbrains.core.AwsClientManager
40
41
import software.aws.toolkits.jetbrains.core.MockClientManagerRule
42
+ import software.aws.toolkits.jetbrains.core.credentials.MockAwsConnectionManager.ProjectAccountSettingsManagerRule
41
43
import software.aws.toolkits.jetbrains.services.s3.editor.S3VirtualBucket
42
44
import java.io.ByteArrayInputStream
43
45
import java.net.URL
@@ -53,6 +55,10 @@ class S3VirtualBucketTest {
53
55
@Rule
54
56
val mockClientManager = MockClientManagerRule (projectRule)
55
57
58
+ @Rule
59
+ @JvmField
60
+ val settingsManagerRule = ProjectAccountSettingsManagerRule (projectRule)
61
+
56
62
@Test
57
63
fun deleteObjects () {
58
64
val s3Client = mockClientManager.create<S3Client >()
@@ -203,16 +209,20 @@ class S3VirtualBucketTest {
203
209
204
210
@Test
205
211
fun getUrl () {
212
+ settingsManagerRule.settingsManager.changeRegionAndWait(AwsRegion (" us-west-2" , " US West (Oregon)" , " aws" ))
213
+
206
214
// Use real manager for this since it can affect the S3Configuration that goes into S3Utilities
207
215
AwsClientManager (projectRule.project).getClient<S3Client >().use {
208
216
val sut = S3VirtualBucket (Bucket .builder().name(" test-bucket" ).build(), it)
209
217
210
- assertThat(sut.generateUrl(" prefix/key" )).isEqualTo(URL (" https://test-bucket.s3.amazonaws.com/prefix/key" ))
218
+ assertThat(sut.generateUrl(" prefix/key" )).isEqualTo(URL (" https://test-bucket.s3.us-west-2. amazonaws.com/prefix/key" ))
211
219
}
212
220
}
213
221
214
222
@Test
215
223
fun getUrlError () {
224
+ settingsManagerRule.settingsManager.changeRegionAndWait(AwsRegion (" us-west-2" , " US West (Oregon)" , " aws" ))
225
+
216
226
// Use real manager for this since it can affect the S3Configuration that goes into S3Utilities
217
227
AwsClientManager (projectRule.project).getClient<S3Client >().use {
218
228
val sut = S3VirtualBucket (Bucket .builder().name(" test-bucket" ).build(), it)
0 commit comments