it('calls onLoadingFinished after loading data', done => { ajaxSpy = url => { expect(url).toBe('dummy endpoint?dummy search key='); return Promise.resolve(dummyData); }; AjaxFilter.trigger() .then(() => { expect(dummyConfig.onLoadingFinished.calls.count()).toBe(1); }) .then(done) .catch(done.fail); });
it('does not call onLoadingFinished if Ajax call fails', done => { const dummyError = new Error('My dummy is sick! :-('); ajaxSpy = url => { expect(url).toBe('dummy endpoint?dummy search key='); return Promise.reject(dummyError); }; AjaxFilter.trigger() .then(done.fail) .catch(error => { expect(error).toBe(dummyError); expect(dummyConfig.onLoadingFinished.calls.count()).toBe(0); }) .then(done) .catch(done.fail); });