Skip to content

Commit c38d326

Browse files
authored
Merge branch 'main' into fix/cancel-button
2 parents 98b6508 + effbebd commit c38d326

File tree

5 files changed

+24
-18
lines changed

5 files changed

+24
-18
lines changed

plugins/amazonq/codetransform/jetbrains-community/src/software/aws/toolkits/jetbrains/services/codemodernizer/CodeModernizerSession.kt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ import java.net.ConnectException
6161
import java.net.SocketTimeoutException
6262
import java.net.UnknownHostException
6363
import java.nio.file.Path
64+
import java.time.Duration
6465
import java.time.Instant
6566
import java.util.Base64
6667
import java.util.concurrent.CancellationException
@@ -408,8 +409,10 @@ class CodeModernizerSession(
408409
UnknownHostException::class,
409410
SocketTimeoutException::class,
410411
HttpRequests.HttpStatusException::class,
411-
ConnectException::class
412-
)
412+
ConnectException::class,
413+
IOException::class,
414+
),
415+
maxDuration = Duration.ofMinutes(5)
413416
) {
414417
clientAdaptor.uploadArtifactToS3(
415418
createUploadUrlResponse.uploadUrl(),

plugins/amazonq/codetransform/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/codemodernizer/CodeWhispererCodeModernizerSessionTest.kt

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@ import software.aws.toolkits.jetbrains.utils.rules.HeavyJavaCodeInsightTestFixtu
6767
import software.aws.toolkits.jetbrains.utils.rules.addFileToModule
6868
import java.io.File
6969
import java.io.FileInputStream
70-
import java.io.IOException
7170
import java.net.ConnectException
7271
import java.util.Base64
7372
import java.util.zip.ZipFile
@@ -478,13 +477,13 @@ class CodeWhispererCodeModernizerSessionTest : CodeWhispererCodeModernizerTestBa
478477
}
479478

480479
@Test
481-
fun `CodeModernizer cannot upload payload due to unknown issue`() = runTest {
480+
fun `CodeModernizer cannot upload payload due to unknown client-side issue`() = runTest {
482481
doReturn(ZipCreationResult.Succeeded(File("./tst-resources/codemodernizer/test.txt")))
483482
.whenever(testSessionContextSpy).createZipWithModuleFiles(any())
484483
doReturn(exampleCreateUploadUrlResponse).whenever(clientAdaptorSpy).createGumbyUploadUrl(any())
485-
doAnswer { throw IOException("mock exception") }.whenever(clientAdaptorSpy).uploadArtifactToS3(any(), any(), any(), any(), any())
484+
doAnswer { throw Exception("mock client-side exception") }.whenever(clientAdaptorSpy).uploadArtifactToS3(any(), any(), any(), any(), any())
486485
val result = testSessionSpy.createModernizationJob(MavenCopyCommandsResult.Success(File("./mock/path/")))
487-
assertEquals(CodeModernizerStartJobResult.ZipUploadFailed(UploadFailureReason.OTHER("mock exception")), result)
486+
assertEquals(CodeModernizerStartJobResult.ZipUploadFailed(UploadFailureReason.OTHER("mock client-side exception")), result)
488487
verify(testSessionStateSpy, times(1)).putJobHistory(any(), eq(TransformationStatus.FAILED), any(), any())
489488
assertEquals(testSessionStateSpy.currentJobStatus, TransformationStatus.FAILED)
490489
}

plugins/core/jetbrains-community/src/software/aws/toolkits/jetbrains/services/telemetry/PluginResolver.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ class PluginResolver private constructor(callerStackTrace: Array<StackTraceEleme
4545
* Sets a PluginResolver instance to a thread-local for the current thread.
4646
* This value will be retrieved by subsequent calls to fromCurrentThread.
4747
*/
48-
fun setThreadLocal(value: PluginResolver) {
48+
fun setThreadLocal(value: PluginResolver?) {
4949
threadLocalResolver.set(value)
5050
}
5151
}

plugins/core/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/telemetry/PluginResolverTest.kt

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,28 +6,25 @@ package software.aws.toolkits.jetbrains.services.telemetry
66
import com.intellij.ide.plugins.IdeaPluginDescriptor
77
import com.intellij.ide.plugins.PluginManagerCore
88
import io.mockk.called
9-
import io.mockk.clearAllMocks
109
import io.mockk.every
10+
import io.mockk.junit5.MockKExtension
1111
import io.mockk.mockk
1212
import io.mockk.mockkStatic
1313
import io.mockk.verify
1414
import junit.framework.TestCase.assertEquals
15-
import org.junit.jupiter.api.AfterEach
1615
import org.junit.jupiter.api.BeforeEach
1716
import org.junit.jupiter.api.Test
17+
import org.junit.jupiter.api.extension.ExtendWith
1818
import software.amazon.awssdk.services.toolkittelemetry.model.AWSProduct
1919

20+
@ExtendWith(MockKExtension::class)
2021
class PluginResolverTest {
2122
@BeforeEach
2223
fun setup() {
24+
PluginResolver.setThreadLocal(null)
2325
mockkStatic(PluginManagerCore::class)
2426
}
2527

26-
@AfterEach
27-
fun tearDown() {
28-
clearAllMocks()
29-
}
30-
3128
@Test
3229
fun getsProductForAmazonQPlugin() {
3330
val pluginDescriptor = mockk<IdeaPluginDescriptor> {

plugins/core/jetbrains-community/tst/software/aws/toolkits/jetbrains/utils/ThreadingUtilsKtTest.kt

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ import com.intellij.openapi.progress.ProgressManager
1010
import com.intellij.testFramework.ApplicationRule
1111
import com.intellij.util.concurrency.AppExecutorUtil
1212
import io.mockk.every
13-
import io.mockk.mockk
13+
import io.mockk.impl.annotations.MockK
14+
import io.mockk.junit4.MockKRule
1415
import org.assertj.core.api.Assertions.assertThatThrownBy
1516
import org.junit.Assert.assertEquals
1617
import org.junit.Rule
@@ -26,6 +27,12 @@ class ThreadingUtilsKtTest {
2627
@JvmField
2728
val application = ApplicationRule()
2829

30+
@get:Rule
31+
val mockkRule = MockKRule(this)
32+
33+
@MockK
34+
private lateinit var pluginResolver: PluginResolver
35+
2936
@Test
3037
fun `computeOnEdt runs on edt`() {
3138
computeOnEdt {
@@ -78,13 +85,13 @@ class ThreadingUtilsKtTest {
7885

7986
@Test
8087
fun `pluginAwareExecuteOnPooledThread inherits plugin resolver`() {
81-
val pluginResolver = mockk<PluginResolver> {
82-
every { product } returns AWSProduct.AMAZON_Q_FOR_JET_BRAINS
83-
}
88+
every { pluginResolver.product } returns AWSProduct.AMAZON_Q_FOR_JET_BRAINS
8489
PluginResolver.setThreadLocal(pluginResolver)
8590

8691
pluginAwareExecuteOnPooledThread {
8792
assertEquals(PluginResolver.fromCurrentThread().product, AWSProduct.AMAZON_Q_FOR_JET_BRAINS)
8893
}.get()
94+
95+
PluginResolver.setThreadLocal(PluginResolver.fromStackTrace(Thread.currentThread().stackTrace))
8996
}
9097
}

0 commit comments

Comments
 (0)