UNPKG

kibana-with-account

Version:

kibana-with-account is develop based kibana project

60 lines (48 loc) 1.69 kB
import ngMock from 'ngMock'; import expect from 'expect.js'; import sinon from 'auto-release-sinon'; import RequestQueueProv from '../../_request_queue'; import DocSourceProv from '../doc_source'; describe('DocSource', function () { require('testUtils/noDigestPromises').activateForSuite(); let requestQueue; let DocSource; beforeEach(ngMock.module('kibana')); beforeEach(ngMock.inject(function (Private) { requestQueue = Private(RequestQueueProv); DocSource = Private(DocSourceProv); })); describe('#onUpdate()', function () { it('adds a request to the requestQueue', function () { const source = new DocSource(); expect(requestQueue).to.have.length(0); source.onUpdate(); expect(requestQueue).to.have.length(1); }); it('returns a promise that is resolved with the results', function () { const source = new DocSource(); const fakeResults = {}; const promise = source.onUpdate().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 DocSource(); source.onUpdate(); 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 DocSource(); source.onUpdate(); sinon.stub(requestQueue[0], 'canStart').returns(false); source.destroy(); expect(requestQueue).to.have.length(0); }); }); });