Use createSinonStub

This commit is contained in:
Chi Vinh Le
2018-08-31 17:24:42 +02:00
parent 25e8cb517b
commit 4c1f2e72cb
7 changed files with 135 additions and 113 deletions
@@ -1,5 +1,25 @@
import sinon, { SinonStub } from "sinon";
/**
* createSinonStub assist in setting up a stub with different
* return paths.
*
* e.g.
* ```
* const s = sinon.stub();
* s.throws();
* s.withArgs("a").returns(0);
* s.withArgs("b").returns(1);
* ```
* is equivalent to.
* ```
* const s = createSinonStub(
* s => s.throws(),
* s => s.withArgs("a").returns(0),
* s => s.withArgs("b").returns(1),
* );
* ```
*/
export default function createSinonStub(
...callbacks: Array<(s: SinonStub) => void>
): SinonStub {