Estoy intentando probar npm mocha una clase que extiende otra clase en otro archivo js.
El problema con el que me encuentro es que el código funciona bien cuando se ejecuta en producción, pero cuando se ejecuta npm test npm, ClassTwo no puede ver la clase uno, independientemente de si lo necesito o no. Si agrego la definición de la clase uno en el archivo de la clase dos, entonces funciona bien.
No puedo poner un requerimiento en ClassTwo.js porque hace que el código del navegador explote ya que requerimiento no es un concepto allí.
ClassOne.js
class ClassOne{ } if(typeof module !== 'undefined'){ module.exports = ClassOne; }ClaseDos.js
class ClassTwo extends ClassOne{ } if(typeof module !== 'undefined'){ module.exports = ClassTwo; }prueba.js
const ClassOne = require('../js/ClassOne.js'); const ClassTwo = require('../js/ClassTwo.js'); ... unit tests ...La respuesta fue crear una variable global en el archivo test.js con el mismo nombre que mi clase extendida y luego hidratarla con el comando require.
prueba.js
const { global } = require("@sinonjs/commons"); global.ClassOne = require('../js/ClassOne.js'); const ClassTwo = require('../js/ClassTwo.js');