/** * Sinon externs */ function sinon(){} sinon.stub = function(){}; sinon.spy = function(){}; sinon.mock = function(){}; sinon.useFakeTimers = function(){}; sinon.clock.tick = function(){}; Function.prototype.alwaysCalledOn = function(){}; Function.prototype.alwaysCalledWith = function(){}; Function.prototype.alwaysCalledWithExactly = function(){}; Function.prototype.alwaysCalledWithMatch = function(){}; Function.prototype.alwaysCalledWithNew = function(){}; Function.prototype.alwaysReturned = function(){}; Function.prototype.alwaysThrew = function(){}; Function.prototype.args; Function.prototype.arguments; Function.prototype.behaviors; Function.prototype.callArg = function(){}; Function.prototype.callArgOn = function(){}; Function.prototype.callArgOnWith = function(){}; Function.prototype.callArgWith = function(){}; Function.prototype.callCount; Function.prototype.callIds; Function.prototype.called; Function.prototype.calledAfter = function(){}; Function.prototype.calledBefore = function(){}; Function.prototype.calledOn = function(){}; Function.prototype.calledOnce; Function.prototype.calledThrice; Function.prototype.calledTwice; Function.prototype.calledWith = function(){}; Function.prototype.calledWithExactly = function(){}; Function.prototype.calledWithMatch = function(){}; Function.prototype.calledWithNew = function(){}; Function.prototype.caller; Function.prototype.callsArg = function(){}; Function.prototype.callsArgAsync = function(){}; Function.prototype.callsArgOn = function(){}; Function.prototype.callsArgOnAsync = function(){}; Function.prototype.callsArgOnWith = function(){}; Function.prototype.callsArgOnWithAsync = function(){}; Function.prototype.callsArgWith = function(){}; Function.prototype.callsArgWithAsync = function(){}; Function.prototype.create = function(){}; Function.prototype.defaultBehavior; Function.prototype.displayName; Function.prototype.exceptions; Function.prototype.firstCall; Function.prototype.formatters; Function.prototype.func; Function.prototype.getCall = function(){}; Function.prototype.getCalls = function(){}; Function.prototype.id; Function.prototype.invoke = function(){}; Function.prototype.invokeCallback = function(){}; Function.prototype.isPresent = function(){}; Function.prototype.lastCall; Function.prototype.length; Function.prototype.matches = function(){}; Function.prototype.name; Function.prototype.neverCalledWith = function(){}; Function.prototype.neverCalledWithMatch = function(){}; Function.prototype.notCalled; Function.prototype.onCall = function(){}; Function.prototype.onFirstCall = function(){}; Function.prototype.onSecondCall = function(){}; Function.prototype.onThirdCall = function(){}; Function.prototype.printf = function(){}; Function.prototype.reset = function(){}; Function.prototype.resetBehavior = function(){}; Function.prototype.restore = function(){}; Function.prototype.returnValues; Function.prototype.returned = function(){}; Function.prototype.returns = function(){}; Function.prototype.returnsArg = function(){}; Function.prototype.returnsThis = function(){}; Function.prototype.secondCall; Function.prototype.spyCall; Function.prototype.thirdCall; Function.prototype.thisValues; Function.prototype.threw = function(){}; Function.prototype['throws'] = function(){}; Function.prototype.throwsException = function(){}; Function.prototype.toString = function(){}; Function.prototype.withArgs = function(){}; Function.prototype.yield = function(){}; Function.prototype.yieldOn = function(){}; Function.prototype.yieldTo = function(){}; Function.prototype.yieldToOn = function(){}; Function.prototype.yields = function(){}; Function.prototype.yieldsAsync = function(){}; Function.prototype.yieldsOn = function(){}; Function.prototype.yieldsOnAsync = function(){}; Function.prototype.yieldsTo = function(){}; Function.prototype.yieldsToAsync = function(){}; Function.prototype.yieldsToOn = function(){}; Function.prototype.yieldsToOnAsync = function(){};