flow-coverage-report
Version:
Generate an HTML report of the flow coverage data
96 lines (83 loc) • 2.18 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.exec = exec;
exports.readFile = readFile;
exports.writeFile = writeFile;
exports.glob = glob;
exports.withTmpDir = withTmpDir;
var _child_process = require("child_process");
var _fs = _interopRequireDefault(require("fs"));
var _glob = _interopRequireDefault(require("glob"));
var _temp = _interopRequireDefault(require("temp"));
// Automatically cleanup temp file on process.exit
_temp["default"].track();
function exec(command, options, extra) {
return new Promise(function (resolve, reject) {
(0, _child_process.exec)(command, options, function (err, stdout, stderr) {
if (err) {
if (extra && extra.dontReject) {
resolve({
err: err,
stdout: stdout,
stderr: stderr
});
} else {
reject(err);
}
} else {
resolve({
stdout: stdout,
stderr: stderr
});
}
});
});
}
function readFile(path) {
return new Promise(function (resolve, reject) {
_fs["default"].readFile(path, function (err, buff) {
if (err) {
reject(err);
} else {
resolve(buff);
}
});
});
}
function writeFile(path, data) {
return new Promise(function (resolve, reject) {
_fs["default"].writeFile(path, data, function (err) {
if (err) {
reject(err);
} else {
resolve();
}
});
});
}
function glob(pattern, options) {
return new Promise(function (resolve, reject) {
(0, _glob["default"])(pattern, options, function (err, files) {
if (err) {
reject(err);
} else {
resolve(files);
}
});
});
} // eslint-disable-next-line unicorn/prevent-abbreviations
function withTmpDir(temporaryFileId) {
return new Promise(function (resolve, reject) {
_temp["default"].mkdir(temporaryFileId, function (err, dirPath) {
if (err) {
reject(err);
} else {
resolve(dirPath);
}
});
});
}
//# sourceMappingURL=promisified.js.map