Como zombar de classes de dependência para testes de unidade com o mocha.js?

Dado que eu tenho duas classes ES6.

Esta é a classe A:

import B from 'B';

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

E classe B:

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

Estou testando a unidade usando mocha (com babel para ES6), chai e sinon, o que funciona muito bem. Mas como posso fornecer uma classe simulada para a classe B ao testar a classe A?

Quero zombar de toda a classe B (ou a função necessária, na verdade não importa) para que a classe A não execute código real, mas eu posso fornecer a funcionalidade de teste.

Isto é, como é o teste do mocha por enquanto:

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???
    });
});

questionAnswers(1)

yourAnswerToTheQuestion