I have a method in a service that uses underscore\'s debounce.
Inside that method is a call to a method on a different service. I\'m trying to test that the different s
Angular $timeout
has advantage in tests because it is mocked in tests to be synchronous. The one won't have this advantage when third-party asynchronous tools one used. In general asynchronous specs will look like that:
var maxDelay = 500;
...
it('has a method getMind, that calls herp.aMethod', function (done){
whoa.getMind();
setTimeout(function () {
expect(herp.aMethod).toHaveBeenCalled();
done();
}, maxDelay);
});
Since Underscore debounce
doesn't offer flush
functionality (while the recent version of Lodash debounce
does), asynchronous testing is the best option available.