Skip to content

Commit 4b5008c

Browse files
committed
implement retry mechanism
1 parent ea3e6ce commit 4b5008c

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

packages/core/src/applicationcomposer/messageHandlers/generateResourceHandler.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,14 @@ import {
1818
} from '../types'
1919
import globals from '../../shared/extensionGlobals'
2020
import { getLogger } from '../../shared/logger/logger'
21-
import * as extApi from '../../amazonq/extApi'
21+
import { AmazonqNotFoundError, getAmazonqApi } from '../../amazonq/extApi'
2222

2323
const TIMEOUT = 30_000
2424

2525
export async function generateResourceHandler(request: GenerateResourceRequestMessage, context: WebviewContext) {
2626
try {
2727
const { chatResponse, references, metadata, isSuccess } = await generateResource(request.cfnType)
28+
2829
const responseMessage: GenerateResourceResponseMessage = {
2930
command: Command.GENERATE_RESOURCE,
3031
messageType: MessageType.RESPONSE,
@@ -57,9 +58,9 @@ async function generateResource(cfnType: string) {
5758
let startTime = globals.clock.Date.now()
5859

5960
try {
60-
const amazonqApi = await extApi.getAmazonqApi()
61+
const amazonqApi = await getAmazonqApi()
6162
if (!amazonqApi) {
62-
throw new extApi.AmazonqNotFoundError()
63+
throw new AmazonqNotFoundError()
6364
}
6465
const request: GenerateAssistantResponseRequest = {
6566
conversationState: {

packages/core/src/test/applicationcomposer/messageHandlers/generateResourceHandler.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ describe.only('generateResourceHandler', function () {
1616
})
1717
for (const _ of Array.from({ length: 1000 }, (i) => i)) {
1818
it('amazon q is not installed', async () => {
19+
this.retries(3)
1920
const panel = await createTemplate()
2021
const postMessageSpy = sinon.spy(panel.webview, 'postMessage')
2122
const context = await createWebviewContext({

0 commit comments

Comments
 (0)