Comment se moquer de la dépendance des classes pour les tests unitaires avec mocha.js?

Étant donné que j'ai deux ES6 classes.

C'est la classe A:

import B from 'B';

class A {
    someFunction(){
        var dependency = new B();
        dependency.doSomething();
    }
}

Et de la classe B:

class B{
    doSomething(){
        //does something
    }
}

Je suis de tests unitaires à l'aide de moka (avec babel pour ES6), chai et sinon, qui fonctionne vraiment bien. Mais comment puis-je fournir une maquette de la classe pour la classe B, lors de l'essai de la classe A?

Je veux de se moquer de l'ensemble de la classe B (ou de la fonction désirée, n'a pas de réelle importance), de sorte que la classe A ne pas exécuter le code réel, mais je peux fournir des fonctionnalités de test.

C'est, ce que l'moka test ressemble pour l'instant:

var A = require('path/to/A.js');

describe("Class A", () => {

    var InstanceOfA;

    beforeEach(() => {
        InstanceOfA = new A();
    });

    it('should call B', () => {
        InstanceOfA.someFunction();
        //How to test A.someFunction() without relying on B???
    });
});
  • lisez à propos de DI
InformationsquelleAutor mvmoay | 2015-09-21