He estado tratando de descubrir cómo implementar la solución de prueba de broma proporcionada aquí (vanilla js) por el equipo de AWS para que funcione y hasta ahora parece que no puedo avanzar. Recibo un error en .mockResolvedValue(expectedResult) como "El argumento de tipo '{ isMock: boolean; }' no se puede asignar al parámetro de tipo 'nunca'". Sin embargo, no puedo encontrar una manera de evitarlo. La función se proyecta sobre el bloque de descripción y sigue el patrón que se muestra en esta publicación de StackOverflow .
¿Alguna idea de lo que estoy haciendo mal? No estoy muy familiarizado con las burlas de esta manera, así que podría estar perdiéndome algo obvio. Además, el patrón que tengo es prácticamente el mismo que los fragmentos de código que proporciona AWS en el enlace inicial.
import { TranscribeClient } from '@aws-sdk/client-transcribe'; const REGION = 'us-east-2'; // Create Transcribe service object. export const transcribeClient = new TranscribeClient({ region: REGION }); import { createTranscribeJob } from './createJob'; import { transcribeClient } from '../../../../libs/transcribeClient'; jest.mock('../../../../libs/transcribeClient.ts'); const mockedTranscribeClient = transcribeClient as jest.Mocked<typeof transcribeClient>; describe('@aws-sdk/client-transcribe mock', () => { it('should successfully mock Transcribe client', async () => { const expectedResult: { isMock: boolean } = { isMock: true }; mockedTranscribeClient.send.mockResolvedValue(expectedResult); const response = await createTranscribeJob({ TranscriptionJobName: 'testName', LanguageCode: 'en-US', MediaFormat: 'mp4', MediaUri: 'testUri', }); expect(response.isMock).toEqual(true); }); });