Sto lottando per ottenere moka, jsdom, moduli es6 con babel per giocare bene con jquery.Come testare il modulo es6 che importa jquery con jsdom
Ecco un modulo
// lib/dom.js
import $ from 'jquery';
const node = (tag)=> $(`<${tag} />`)
export {
node
}
Ecco un test
// test/dom.js
import assert from 'assert';
import { node } from '../src/lib/dom';
describe('node(tag)',()=> {
it('should return a Node',()=> {
let img = node('img');
assert(img.nodeName === 'IMG');
});
});
Ecco il setup jsdom
// test/_setup.js
var jsdom = require('jsdom');
global.document = jsdom.jsdom('<!doctype html><html><body></body></html>');
global.window = document.parentWindow;
Lo script per eseguire
mocha --compilers js:babel-register --recursive
Di cosa ho bisogno di cambiare per permettere di caricare jsdom jquery in modo che dom.js possibile caricare il modulo jquery senza ottenere l'errore:
Errore: jQuery richiede una finestra con un documento
Ecco il sorgente completo https://github.com/markbrown4/test-simple
Ho provato questo, ma 'global. $' Sembra essere un oggetto invece di una funzione ... qualche idea del perché? – Pensierinmusica