Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 15 additions & 16 deletions lib/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -398,18 +398,18 @@ Lambda.prototype._codeDirectory = function () {
return path.resolve('.', '.lambda')
}

Lambda.prototype._cleanDirectory = function (codeDirectory, callback) {
fs.remove(codeDirectory, function (err) {
if (err) {
throw err
}

fs.mkdirs(codeDirectory, function (err) {
if (err) {
throw err
}

return callback(null, true)
Lambda.prototype._cleanDirectory = (codeDirectory) => {
return new Promise((resolve, reject) => {
fs.remove(codeDirectory, (err) => {
if (err) return reject(err)
resolve()
})
}).then(() => {
return new Promise((resolve, reject) => {
fs.mkdirs(codeDirectory, (err) => {
if (err) return reject(err)
resolve()
})
})
})
}
Expand Down Expand Up @@ -523,10 +523,7 @@ Lambda.prototype._buildAndArchive = function (program, archiveCallback) {
const codeDirectory = _this._codeDirectory()
const lambdaSrcDirectory = program.sourceDirectory ? program.sourceDirectory.replace(/\/$/, '') : '.'

_this._cleanDirectory(codeDirectory, (err) => {
if (err) {
return archiveCallback(err)
}
_this._cleanDirectory(codeDirectory).then(() => {
console.log('=> Moving files to temporary directory')

// Move files to tmp folder
Expand All @@ -550,6 +547,8 @@ Lambda.prototype._buildAndArchive = function (program, archiveCallback) {
})
})
})
}).catch((err) => {
return archiveCallback(err)
})
}

Expand Down
39 changes: 16 additions & 23 deletions test/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -242,22 +242,21 @@ describe('lib/main', function () {
})
})

describe('_cleanDirectory', function () {
it('`codeDirectory` is empty', function (done) {
lambda._cleanDirectory(codeDirectory, function () {
describe('_cleanDirectory', () => {
it('`codeDirectory` is empty', () => {
return lambda._cleanDirectory(codeDirectory).then(() => {
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._fileCopy(program, '.', codeDirectory, true, function (err, result) {
it('`codeDirectory` is empty. (For `codeDirectory` where the file was present)', (done) => {
lambda._fileCopy(program, '.', codeDirectory, true, (err, result) => {
assert.isNull(err)
const contents = fs.readdirSync(codeDirectory)
assert.isTrue(contents.length > 0)
lambda._cleanDirectory(codeDirectory, function () {
lambda._cleanDirectory(codeDirectory).then(() => {
assert.isTrue(fs.existsSync(codeDirectory))
const contents = fs.readdirSync(codeDirectory)
assert.equal(contents.length, 0)
Expand All @@ -282,7 +281,7 @@ describe('lib/main', function () {
})
})

beforeEach((done) => lambda._cleanDirectory(codeDirectory, done))
beforeEach(() => lambda._cleanDirectory(codeDirectory))

it('_fileCopy an index.js as well as other files', (done) => {
lambda._fileCopy(program, '.', codeDirectory, true, (err, result) => {
Expand Down Expand Up @@ -381,17 +380,15 @@ describe('lib/main', function () {

describe('_npmInstall', () => {
beforeEach((done) => {
lambda._cleanDirectory(codeDirectory, (err) => {
if (err) {
return done(err)
}

lambda._cleanDirectory(codeDirectory).then(() => {
lambda._fileCopy(program, '.', codeDirectory, true, (err) => {
if (err) {
return done(err)
}
done()
})
}).catch((err) => {
done(err)
})
})

Expand All @@ -414,17 +411,15 @@ describe('lib/main', function () {
? 'hoge fuga\' piyo'
: 'hoge "fuga\' \\piyo'
codeDirectory = path.join(os.tmpdir(), directoryName)
lambda._cleanDirectory(codeDirectory, (err) => {
if (err) {
return done(err)
}

lambda._cleanDirectory(codeDirectory).then(() => {
lambda._fileCopy(program, '.', codeDirectory, true, (err) => {
if (err) {
return done(err)
}
done()
})
}).catch((err) => {
done(err)
})
})

Expand Down Expand Up @@ -515,11 +510,7 @@ describe('lib/main', function () {
describe('_zip', function () {
beforeEach(function (done) {
_timeout({ this: this, sec: 30 }) // give it time to build the node modules
lambda._cleanDirectory(codeDirectory, function (err) {
if (err) {
return done(err)
}

lambda._cleanDirectory(codeDirectory).then(() => {
lambda._fileCopy(program, '.', codeDirectory, true, function (err) {
if (err) {
return done(err)
Expand All @@ -531,6 +522,8 @@ describe('lib/main', function () {
done()
})
})
}).catch((err) => {
done(err)
})
})

Expand Down