diff --git a/lib/main.js b/lib/main.js index ade00b39..b51afce8 100644 --- a/lib/main.js +++ b/lib/main.js @@ -163,7 +163,12 @@ Lambda.prototype._params = (program, buffer) => { Description: program.description, MemorySize: program.memorySize, Timeout: program.timeout, - Publish: program.publish, + Publish: (() => { + if (typeof program.publish === 'boolean') { + return program.publish + } + return program.publish === 'true' + })(), VpcConfig: { SubnetIds: [], SecurityGroupIds: [] diff --git a/test/main.js b/test/main.js index 5eaa2618..74623dd8 100644 --- a/test/main.js +++ b/test/main.js @@ -222,6 +222,35 @@ describe('lib/main', function () { assert.isNull(params.TracingConfig.Mode) }) + describe('params.Publish', () => { + describe('boolean', () => { + it('If true, it is set to true', () => { + program.publish = true + const params = lambda._params(program) + assert.isTrue(params.Publish) + }) + it('If false, it is set to false', () => { + program.publish = false + const params = lambda._params(program) + assert.isFalse(params.Publish) + }) + }) + + describe('string', () => { + it('If "true", it is set to true', () => { + program.publish = 'true' + const params = lambda._params(program) + assert.isTrue(params.Publish) + }) + it('If not "true", it is set to false', () => { + program.publish = 'false' + assert.isFalse(lambda._params(program).Publish) + program.publish = 'aaa' + assert.isFalse(lambda._params(program).Publish) + }) + }) + }) + describe('configFile', () => { beforeEach(() => { // Prep...