2015-06-23 7 views
7

Ich versuche expect Tests mit mocha, geschrieben in ES6 zu verwenden, und bin immer TypeError sogar mit einem einfachen Testfall:Mocha ES6-Tests unterstützt?

import expect from "expect"; 

describe('Example',() => { 
    it('should just work', (done) => { 
    expect(5).to.eql(5); 
    done(); 
    }); 
}); 

ich Babel bin mit den Tests zu konvertieren und laufen:

./node_modules/.bin/mocha --compilers js:babel/register example.js

was zur Folge hat:

Example 
    1) should just work 


    0 passing (76ms) 
    1 failing 

    1) Example should just work: 
    TypeError: Cannot read property 'eql' of undefined 
     at Context.<anonymous> (example.js:5:17) 

Wird dies nicht unterstützt, oder fehlt mir etwas Kritisches?

Versionen:

  • babel 5.5.6
  • erwarten 1.6.0
  • Mokka 2.2.5
+1

Beachten Sie, dass Sie in 'babel 6.x'' --compilers js: babel-core/register' schreiben sollten. –

Antwort

8

Dies ist ein Kopf Scratcher zuerst war, aber du verwendest den falschen Import!

Ihren Import ändern:

import expect from "expect.js"; 

Und alles funktioniert. Here ist das expect Modul. Das Modul Sie expect'ing‘ist zu verwenden expect.js

Hoffnung genannt, das hilft, und sorry für die schlechte Wortspiel :)

Edit: Sie werden auch als gut npm install expect.js sicher sein müssen!

+0

Ich kann nicht glauben, dass es war! Vielen Dank! Ich habe beiläufig die '.js' von dem 'Import'-Gedanken ausgeschlossen" Oh, ich kann Dateierweiterungen von Importen weglassen ". –

+1

Was lustig ist, ist, dass ich genau dasselbe gemacht habe wie du, als ich versuchte, dies zu reproduzieren. – Brennan