Come per il titolo, sto provando a testare alcuni moduli AMD scritti in ES6 JS, in esecuzione da nodejs.Come testare l'armonia/ES6/ECMAScript 6 JavaScript?
Ho provato prima con Intern: anche dopo aver attivato --harmony
in nodejs, ho finito di fronte catena dipendenza Intern, dove non era in grado di consentire in armonia esempio Istanbul, esprima e altri (ho aperto uno issue per quello).
Ho poi spostato su mocha, e qui mi sono bloccato ... stranamente. Ho permesso armonia sia per nodejs e moka per sé, ecco lo script di test package.json
:
"test": "node --harmony node_modules\\mocha\\bin\\mocha tests --harmony --recursive"
che ho eseguito dal prompt dei comandi come npm test my_test_folder
. Ancora, alcuni costrutti ES6 (come const
) passano bene, ma poi si soffoca sul compito distruttivo. Ecco le prime linee di uscita:
const { log, dir } = require('../consoleLogger.js');
^
SyntaxError: Unexpected token {
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
[...continues...]
Inoltre ho controllato questo SO thread e sentito parlare di transpilers,
, ma io non so davvero se potessero lavorare
e ora sto cercando di far lavorare in transpilers questo caso.
Qualche idea su come risolvere questo problema, senza ricorrere a modificare tutti i bit ES6 diffusi nel codice? TA.
Sei in grado di utilizzare una delle funzionalità di armonia quando non si utilizza Mocha? Se non funziona quando non si utilizza Mocha, non funzionerà con Mocha. – Louis
Un buon punto, anche se il codice fa parte di un plug-in Thunderbird, in cui funzionano le funzionalità di armonia. Qui sto cercando di eseguire test dalla riga di comando (nodo), quindi i problemi vengono fuori ora. – superjos
Poiché nessuno lo ha menzionato, dai un'occhiata a http://kangax.github.io/compat-table/es6/ –