@floogulinc/cypress-mongo-seeder
Version:
A cypress plugin to populate a mongo db from json files
39 lines (38 loc) • 1.27 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var fs_1 = __importDefault(require("fs"));
var path_1 = require("path");
exports.getJsonFiles = function (dir) {
var files = fs_1.default.readdirSync(dir);
return files.map(function (file) { return dir + "/" + file; }).filter(isValidFile);
};
exports.getFileContent = function (seedFilePath) {
if (!isValidFile(seedFilePath)) {
return null;
}
var fileContent = fs_1.default.readFileSync(seedFilePath);
var seedContent = JSON.parse(fileContent.toString());
if (!seedContent || !Array.isArray(seedContent)) {
return null;
}
return seedContent;
};
exports.getCollectionName = function (file) {
if (!isValidFile(file)) {
return null;
}
var seedFileName = path_1.basename(file);
return seedFileName.split('.')[0];
};
var isValidFile = function (file) {
if (!fs_1.default.existsSync(file)) {
return false;
}
if (path_1.extname(file) !== '.json') {
return false;
}
return fs_1.default.statSync(file).size > 0;
};