diff --git a/lib/plugins/print/print.js b/lib/plugins/print/print.js index f28c603fc..82e08788c 100644 --- a/lib/plugins/print/print.js +++ b/lib/plugins/print/print.js @@ -34,6 +34,8 @@ class Print { } return this.serverless.variables.populateObject(conf); }).then((data) => this.serverless.cli.consoleLog(YAML.dump(data))); + + return BbPromise.resolve(); } } diff --git a/lib/plugins/print/print.test.js b/lib/plugins/print/print.test.js index 63faf4482..df1a57cda 100644 --- a/lib/plugins/print/print.test.js +++ b/lib/plugins/print/print.test.js @@ -5,16 +5,20 @@ const sinon = require('sinon'); const proxyquire = require('proxyquire'); const Serverless = require('../../Serverless'); const CLI = require('../../classes/CLI'); +const YAML = require('js-yaml'); describe('Print', () => { let print; let serverless; let getServerlessConfigFileStub; - let consoleLogStub; + let consoleLogSpy; + let sandbox; beforeEach(() => { - getServerlessConfigFileStub = sinon.stub(); + sandbox = sinon.sandbox.create(); + consoleLogSpy = sandbox.spy(console, 'log'); + getServerlessConfigFileStub = sandbox.stub(); const printPlugin = proxyquire('./print.js', { '../../utils/getServerlessConfigFile': getServerlessConfigFileStub, }); @@ -25,29 +29,28 @@ describe('Print', () => { } serverless.cli = new CLI(serverless); print = new printPlugin(serverless); - consoleLogStub = sinon.stub(serverless.cli, 'consoleLog').returns(true); }); afterEach(() => { - serverless.cli.consoleLog.restore(); + consoleLogSpy.restore(); }) - describe('#constructor()', () => { - it('should have commands', () => expect(print.commands).to.be.not.empty); - }); - it('should print standard config', () => { - getServerlessConfigFileStub.resolves({ + const conf = { service: 'my-service', provider: { name: 'aws' } + } + getServerlessConfigFileStub.resolves(conf) + + print.print().then(() => { + const message = consoleLogSpy.args.join(); + + expect(getServerlessConfigFileStub.calledOnce).to.equal(true); + expect(console.log.calledOnce).to.equal(true); + expect(message).to.have.string(YAML.dump(conf)); }) - - print.print(); - - expect(getServerlessConfigFileStub.calledOnce).to.equal(true); - expect(consoleLogStub.called).to.equal(true); }); });