Jest com coffeescript jsx?
Como posso usar o Jest para testar os componentes do React escritos em CoffeeScript + React jsx?
O único exemplo do CoffeeScript fornecido com o Jest usa o CoffeeScript comum e não funciona com o CoffeeScript + React JSX (erro de sintaxe ao atingir um valor<
)
// preprocessor.js
var execSync = require('exec-sync');
module.exports = {
process: function (src, path) {
return execSync('browserify -t coffee-reactify ' + path);
}
};
Isso funciona, mas leva muito tempo (bons 12 segundos para um teste simulado).
Então eu tentei:
segunda tentativa: café-reagir-transformar// preprocessor.js
var coffee = require('coffee-script');
var transform = require('coffee-react-transform');
module.exports = {
process: function(src, path) {
if (path.match(/\.coffee$/)) {
return coffee.compile(transform(src), {'bare': true});
}
return src;
}
};
Isso gera um erro estranho, como:
TypeError: function () {...} não possui o método 'getPooled'
O único resultado do Google para "não tem método 'getPooled'" éessa essência, que mostra exatamente o erro que recebo, mas não oferece outras idéias.
terceira tentativa possívelAcho que eu poderia usarreativar café, mas retorna um fluxo que é assíncrono, enquanto oprocess
função empreprocess.js
é usado de forma síncrona e, até o momento, não foi possível ler um fluxo de forma síncrona.
O que eu posso fazer?