Skip to content

Commit 9e717a2

Browse files
authored
Fix flaky CredentialsRegionHandlerTest tests (#2147)
1 parent 5dd8271 commit 9e717a2

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

core/tst/software/aws/toolkits/core/region/AwsRegionTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,6 @@ fun anAwsRegion(id: String = aRegionId(), name: String = aString(), partitionId:
4747
fun aRegionId(): String {
4848
val prefix = arrayOf("af", "us", "ca", "eu", "ap", "me", "cn").random()
4949
val compass = arrayOf("north", "south", "east", "west", "central").random()
50-
val count = Random.nextInt(1, 10)
50+
val count = Random.nextInt(1, 100)
5151
return "$prefix-$compass-$count"
5252
}

jetbrains-core/tst/software/aws/toolkits/jetbrains/core/region/MockRegionProvider.kt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import software.aws.toolkits.core.region.AwsPartition
99
import software.aws.toolkits.core.region.AwsRegion
1010
import software.aws.toolkits.core.region.Service
1111
import software.aws.toolkits.core.region.ToolkitRegionProvider
12+
import software.aws.toolkits.core.region.aRegionId
1213
import software.aws.toolkits.core.region.anAwsRegion
1314
import software.aws.toolkits.core.utils.test.aString
1415

@@ -65,6 +66,17 @@ class MockRegionProvider : ToolkitRegionProvider() {
6566
regionProvider.reset()
6667
}
6768

68-
fun createAwsRegion(partitionId: String = aString()) = anAwsRegion(partitionId = partitionId).also { regionProvider.addRegion(it) }
69+
fun createAwsRegion(id: String = uniqueRegionId(), partitionId: String = aString()): AwsRegion =
70+
anAwsRegion(id = id, partitionId = partitionId).also { regionProvider.addRegion(it) }
71+
72+
private fun uniqueRegionId(): String {
73+
repeat(10) {
74+
val generatedId = aRegionId()
75+
if (regionProvider[generatedId] == null) {
76+
return generatedId
77+
}
78+
}
79+
throw IllegalStateException("Failed to generate a unique region ID")
80+
}
6981
}
7082
}

0 commit comments

Comments
 (0)