Búsqueda de sitios web

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

Artículos relacionados