From ccdd592cd4176800df63677346b78deda1a1ec6a Mon Sep 17 00:00:00 2001 From: abetomo Date: Thu, 20 Apr 2017 13:21:54 +0900 Subject: [PATCH 1/2] Add _cleanDirectory test --- test/main.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/test/main.js b/test/main.js index ba75e1d8..3f47d931 100644 --- a/test/main.js +++ b/test/main.js @@ -137,6 +137,30 @@ describe('node-lambda', function () { }); }); + describe('_cleanDirectory', function () { + it('`codeDirectory` is empty', function (done) { + lambda._cleanDirectory(codeDirectory, function () { + assert.isTrue(fs.existsSync(codeDirectory)); + const contents = fs.readdirSync(codeDirectory); + assert.equal(contents.length, 0); + done(); + }); + }); + + it('`codeDirectory` is empty. (For `codeDirectory` where the file was present)', function (done) { + lambda._rsync(program, '.', codeDirectory, true, function (err, result) { + const contents = fs.readdirSync(codeDirectory); + assert.isTrue(contents.length > 0); + lambda._cleanDirectory(codeDirectory, function () { + assert.isTrue(fs.existsSync(codeDirectory)); + const contents = fs.readdirSync(codeDirectory); + assert.equal(contents.length, 0); + done(); + }); + }); + }); + }); + describe('_rsync', function () { beforeEach(function (done) { lambda._cleanDirectory(codeDirectory, done); From d27537ebda080e3ea04e5bbc7ca040935f0987ea Mon Sep 17 00:00:00 2001 From: abetomo Date: Thu, 20 Apr 2017 13:25:16 +0900 Subject: [PATCH 2/2] Fix to use fs object --- lib/main.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/main.js b/lib/main.js index 19d9ab55..7653c3c0 100644 --- a/lib/main.js +++ b/lib/main.js @@ -191,7 +191,7 @@ Lambda.prototype._rsync = function (program, src, dest, excludeNodeModules, call return '--exclude=' + exclude; }).join(' '); - exec('mkdir -p ' + dest, function (err) { + fs.mkdirs(dest, function (err) { if (err) { return callback(err); } @@ -298,7 +298,7 @@ Lambda.prototype._codeDirectory = function (program) { }; Lambda.prototype._cleanDirectory = function (codeDirectory, callback) { - exec('rm -rf ' + codeDirectory, function (err) { + fs.remove(codeDirectory, function (err) { if (err) { throw err; }