UNPKG

kibana-with-account

Version:

kibana-with-account is develop based kibana project

60 lines (48 loc) 1.73 kB
import ngMock from 'ngMock'; import expect from 'expect.js'; import sinon from 'auto-release-sinon'; import RequestQueueProv from '../../_request_queue'; import SearchSourceProv from '../search_source'; describe('SearchSource', function () { require('testUtils/noDigestPromises').activateForSuite(); let requestQueue; let SearchSource; beforeEach(ngMock.module('kibana')); beforeEach(ngMock.inject(function (Private) { requestQueue = Private(RequestQueueProv); SearchSource = Private(SearchSourceProv); })); describe('#onResults()', function () { it('adds a request to the requestQueue', function () { const source = new SearchSource(); expect(requestQueue).to.have.length(0); source.onResults(); expect(requestQueue).to.have.length(1); }); it('returns a promise that is resolved with the results', function () { const source = new SearchSource(); const fakeResults = {}; const promise = source.onResults().then((results) => { expect(results).to.be(fakeResults); }); requestQueue[0].defer.resolve(fakeResults); return promise; }); }); describe('#destroy()', function () { it('aborts all startable requests', function () { const source = new SearchSource(); source.onResults(); sinon.stub(requestQueue[0], 'canStart').returns(true); source.destroy(); expect(requestQueue).to.have.length(0); }); it('aborts all non-startable requests', function () { const source = new SearchSource(); source.onResults(); sinon.stub(requestQueue[0], 'canStart').returns(false); source.destroy(); expect(requestQueue).to.have.length(0); }); }); });