UNPKG

mongodbup

Version:

A nodejs application to run mongoDb update scripts

43 lines (31 loc) 1.26 kB
_ = require 'lodash' messages = require './messages.coffee' fileUtils = require './file-utils.coffee' validateScriptFiles = (args) -> workingDirectory = fileUtils.getWorkingDirectory args hasReadAccess = fileUtils.hasReadAccess workingDirectory unless hasReadAccess console.error messages.ErrorInvalidDirOrPermission return files = fileUtils.getFilesInDir workingDirectory if files.length == 0 console.error messages.ErrorScriptDirectoryIsEmpty return scriptFiles = fileUtils.filterToFilesWithExtension files, [ '.coffee', '.js' ] if scriptFiles.length is 0 console.error messages.ErrorScriptDirectoryHasNoScriptFiles return fileNameAndNumericPrefix = fileUtils.extractNumericPrefix scriptFiles, workingDirectory if fileNameAndNumericPrefix.length is 0 console.error messages.ErrorMissingNumericalPrefix return uniquelyNumbered = fileUtils.getUniqueFilePrefixes fileNameAndNumericPrefix if uniquelyNumbered.length isnt fileNameAndNumericPrefix.length console.error messages.ErrorNumericalSequenceNotUnique return sortedList = fileUtils.sortByPrefix fileNameAndNumericPrefix return sortedList validator = { validateScriptFiles : validateScriptFiles } module.exports = validator