Verstehen von Sinon.js yield (), yes () und callsArg ()

Was ist der Unterschied zwischen

  • stub.yield([arg1, arg2, ...])
  • spy.yields([arg1, arg2, ...])
  • stub.callsArg(index)

in der Sinon.js stub-Bibliothek?

stub.yield() ist der einzige, den ich habe in der Lage zu begreifen:

  stub = sinon.stub(API, 'call_remote');
  callback = sinon.spy();
  API.call_remote('help', callback);
  @stub.yield( "solution!" );
  @stub.calledOnce.should.be.true;
  @callback.calledOnce.should.be.true;
  @callback.args[0][0].should.eql( "solution!" );

Als getestet mit should.js würden alle Behauptungen pass.

Gibt es ähnliche Testbilder für stub.yields() und stub.callsArg(index)?

Die Dokumentation bietet keine Beispiele, um zu klären, diese beiden anderen Methoden, aber ich bin neugierig auf Sie.

InformationsquelleAutor der Frage TimeEmit | 2013-04-14

Schreibe einen Kommentar