typescript - Funciones stub de Sinon que se exportan a través de un archivo índice
Considere los siguientes archivos de TypeScript:
- A.ts
export const funcA = ()=>{}
- B.ts
export const funcB = ()=>{}
- index.ts
export * from './A.ts'
export * from './B.ts'
Ahora, en mis pruebas, si importo el archivo interno directamente, puedo simular sus miembros:
import * as A from './A.ts'
sinon.stub(A,'funcA');
Sin embargo, si importo el índice, no me dejará simular sus miembros:
import * as myModule from `./index.ts`
sinon.stub(myModule,'funcA'); // does not work
¿Alguien puede explicar? ¿Hay un enfoque diferente?
Respuesta #1
esto es lo que funciona para mí,
en el archivo index.ts, en lugar de hacer así
export * from './A.ts'
export * from './B.ts'
Terminé usando el valor predeterminado
import { funcA } from './A.ts';
import { funcB } from './B.ts';
export default {funcA, funcB};
entonces en mi archivo de prueba, podría simular así
import myModule from `./index.ts`
sinon.stub(myModule,'funcA'); // now works
