Estoy usando JEST para probar código javascript en módulos ES6. Se parece a esto:
import Block from "./block.js"; export default class Blockchain { constructor() { this.chain = [Block.genesis()]; } addBlock({ data }) { const previousBlock = this.chain[this.chain.length-1]; const newBlock = Block.mineBlock({ lastBlock:previousBlock, data }); this.chain.push(newBlock); } }Pero cuando ejecuté las pruebas unitarias me aparece el siguiente mensaje:
ReferenceError: el módulo no está definido en el alcance del módulo ES Este archivo se trata como un módulo ES porque tiene una extensión de archivo '.js' y '/mnt/c/Users/carlo/Documents/github-repos/blockchain_development/package. json' contiene "tipo": "módulo". Para tratarlo como un script CommonJS, cámbiele el nombre para usar la extensión de archivo '.cjs'.
Estoy usando Babel para compilar los módulos ES6 y el script de desarrollo funciona perfectamente. Entonces, el problema está relacionado con que Jest no puede ejecutar los módulos ES6. Si alguien me puede ayudar con esto se lo agradecería.