UNPKG

navy

Version:

Quick and powerful development environments using Docker and Docker Compose

52 lines (50 loc) 1.68 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _chai = require("chai"); var _sinon = _interopRequireDefault(require("sinon")); var _proxyquire = _interopRequireDefault(require("proxyquire")); /* eslint-env mocha */ describe('cli/logs', function () { let sandbox; let getNavyStub; let navyStub; let logs; beforeEach(function () { sandbox = _sinon.default.createSandbox(); navyStub = { spawnLogStream: sandbox.stub().resolves() }; getNavyStub = sandbox.stub().returns(navyStub); logs = _proxyquire.default.noCallThru()('../logs', { '../': { getNavy: getNavyStub } }); }); afterEach(function () { sandbox.restore(); }); describe('default export', function () { it('should resolve the navy instance using opts.navy', async function () { await logs(['api'], { navy: 'env-1' }); (0, _chai.expect)(getNavyStub.calledOnce).to.equal(true); (0, _chai.expect)(getNavyStub.firstCall.args[0]).to.equal('env-1'); }); it('should call spawnLogStream with the supplied services array', async function () { const services = ['api', 'web']; await logs(services, { navy: 'env-1' }); (0, _chai.expect)(navyStub.spawnLogStream.calledOnce).to.equal(true); (0, _chai.expect)(navyStub.spawnLogStream.firstCall.args[0]).to.equal(services); }); it('should propagate empty service lists through to spawnLogStream', async function () { await logs([], { navy: 'env-1' }); (0, _chai.expect)(navyStub.spawnLogStream.firstCall.args[0]).to.eql([]); }); }); });