Skip to content

Commit ce13860

Browse files
committed
test fix
1 parent bdc5544 commit ce13860

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

plugins/amazonq/codewhisperer/jetbrains-community/tstFixtures/software/aws/toolkits/jetbrains/services/codewhisperer/CodeWhispererTestUtil.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,6 +248,7 @@ fun aRequestContext(
248248
Random.nextLong(),
249249
Random.nextLong(),
250250
Random.nextDouble(),
251+
Random.nextDouble(),
251252
Random.nextLong(),
252253
Random.nextLong(),
253254
Random.nextLong(),

plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/CodeWhispererFeatureConfigService.kt

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,11 @@ import software.amazon.awssdk.services.codewhispererruntime.CodeWhispererRuntime
1111
import software.amazon.awssdk.services.codewhispererruntime.model.FeatureValue
1212
import software.amazon.awssdk.services.codewhispererruntime.model.ListAvailableCustomizationsRequest
1313
import software.aws.toolkits.core.utils.debug
14+
import software.aws.toolkits.core.utils.error
1415
import software.aws.toolkits.core.utils.getLogger
1516
import software.aws.toolkits.jetbrains.core.awsClient
17+
import software.aws.toolkits.jetbrains.core.credentials.ToolkitConnectionManager
18+
import software.aws.toolkits.jetbrains.core.credentials.pinning.QConnection
1619
import software.aws.toolkits.jetbrains.utils.isQExpired
1720

1821
@Service
@@ -22,12 +25,17 @@ class CodeWhispererFeatureConfigService {
2225
@RequiresBackgroundThread
2326
fun fetchFeatureConfigs(project: Project) {
2427
if (isQExpired(project)) return
28+
val connection = connection(project)
29+
if (connection == null) {
30+
LOG.error { "No connection found even after validating Q connection" }
31+
return
32+
}
2533

2634
LOG.debug { "Fetching feature configs" }
2735
try {
28-
val response = project.awsClient<CodeWhispererRuntimeClient>().listFeatureEvaluations {
36+
val response = connection.getConnectionSettings().awsClient<CodeWhispererRuntimeClient>().listFeatureEvaluations {
2937
it.userContext(codeWhispererUserContext())
30-
}
38+
} ?: return
3139

3240
// Simply force overwrite feature configs from server response, no needed to check existing values.
3341
response.featureEvaluations().forEach {
@@ -51,7 +59,7 @@ class CodeWhispererFeatureConfigService {
5159
val availableCustomizations =
5260
calculateIfIamIdentityCenterConnection(project) {
5361
try {
54-
project.awsClient<CodeWhispererRuntimeClient>().listAvailableCustomizationsPaginator(
62+
connection.getConnectionSettings().awsClient<CodeWhispererRuntimeClient>().listAvailableCustomizationsPaginator(
5563
ListAvailableCustomizationsRequest.builder().build()
5664
)
5765
.stream()
@@ -116,6 +124,9 @@ class CodeWhispererFeatureConfigService {
116124
featureConfigs[name]?.value ?: FEATURE_DEFINITIONS[name]?.value
117125
?: FeatureValue.builder().boolValue(false).build()
118126

127+
private fun connection(project: Project) =
128+
ToolkitConnectionManager.getInstance(project).activeConnectionForFeature(QConnection.getInstance())
129+
119130
companion object {
120131
fun getInstance(): CodeWhispererFeatureConfigService = service()
121132
private const val TEST_FEATURE_NAME = "testFeature"

0 commit comments

Comments
 (0)