diff --git a/sinon-chai/sinon-chai.expect.d.ts b/sinon-chai/sinon-chai.expect.d.ts new file mode 100644 index 000000000..da5c88338 --- /dev/null +++ b/sinon-chai/sinon-chai.expect.d.ts @@ -0,0 +1,33 @@ +// Type definitions for sinon-chai expect 2.4.0 +// Project: https://github.com/domenic/sinon-chai +// Definitions by: Kazi Manzur Rashid +// DefinitelyTyped: https://github.com/borisyankov/DefinitelyTyped + +///  + +declare module chai { + interface Been { + called: bool; + calledOnce: bool; + calledTwice: bool; + calledThrice: bool; + calledBefore(spy: any): bool; + calledAfter(spy: any): bool; + calledOn(context: any): bool; + alwaysCalledOn(context: any): bool; + calledWith(...args: any[]): bool; + alwaysCalledWith(...args: any[]): bool; + calledWithExactly(...args: any[]): bool; + alwaysCalledWithExactly(...args: any[]): bool; + calledWithMatch(...args: any[]): bool; + alwaysCalledWithMatch(...args: any[]): bool; + returned(returnVal: any): bool; + alwaysReturned(returnVal: any): bool; + threw(errorObjOrErrorTypeStringOrNothing: any): bool; + alwaysThrew(errorObjOrErrorTypeStringOrNothing: any): bool; + } + + interface Have { + been: Been; + } +} \ No newline at end of file diff --git a/sinon-chai/sinon-chai.expect.ts b/sinon-chai/sinon-chai.expect.ts new file mode 100644 index 000000000..ef4b4b784 --- /dev/null +++ b/sinon-chai/sinon-chai.expect.ts @@ -0,0 +1,30 @@ +///  +///  + +var expect = chai.expect; + +function test() { + var spy; + var anotherSpy; + var context; + var match; + + expect(spy).to.have.been.called; + expect(spy).to.have.been.calledOnce; + expect(spy).to.have.been.calledTwice; + expect(spy).to.have.been.calledThrice; + expect(spy).to.have.been.calledBefore(anotherSpy); + expect(spy).to.have.been.calledAfter(anotherSpy); + expect(spy).to.have.been.calledOn(context); + expect(spy).to.have.been.alwaysCalledOn(context); + expect(spy).to.have.been.calledWith('foo', 'bar'); + expect(spy).to.have.been.alwaysCalledWith('foo', 'bar'); + expect(spy).to.have.been.calledWithExactly('foo', 'bar'); + expect(spy).to.have.been.alwaysCalledWithExactly('foo', 'bar'); + expect(spy).to.have.been.calledWithMatch(match); + expect(spy).to.have.been.alwaysCalledWithMatch(match); + expect(spy).to.have.been.returned(1); + expect(spy).to.have.been.alwaysReturned(1); + expect(spy).to.have.been.threw('an error'); + expect(spy).to.have.been.alwaysThrew('an error'); +} \ No newline at end of file