Réinitialiser l'appel sur Jasmine espion ne revient pas

Je suis en utilisant un Jasmin (2.2.0) espion pour voir si un certain callback est appelée.

Code de Test:

it('tests', function(done) {
  var spy = jasmine.createSpy('mySpy');
  objectUnderTest.someFunction(spy).then(function() {
    expect(spy).toHaveBeenCalled();
    done();
  });
});

Cela fonctionne comme prévu. Mais maintenant, je vais ajouter une deuxième niveau:

it('tests deeper', function(done) {
  var spy = jasmine.createSpy('mySpy');
  objectUnderTest.someFunction(spy).then(function() {
    expect(spy).toHaveBeenCalled();
    spy.reset();
    return objectUnderTest.someFunction(spy);
  }).then(function() {
    expect(spy.toHaveBeenCalled());
    expect(spy.callCount).toBe(1);
    done();
  });
});

Ce test ne retourne jamais, apparemment parce que le done de rappel n'est jamais appelée. Si je supprime la ligne spy.reset()le test n'est fini, mais, évidemment, échoue sur la dernière attente. Cependant, la callCount champ semble être undefinedplutôt que de 2.

source d'informationauteur Jorn