webpack/test/helpers/captureStdio.js

30 lines
401 B
JavaScript
Raw Normal View History

const stripAnsi = require("strip-ansi");
module.exports = stdio => {
let logs = [];
const write = stdio.write;
stdio.write = function(str) {
logs.push(str);
};
return {
data: logs,
reset: () => (logs = []),
toString: () => {
return logs.map(v => stripAnsi(v)).join("");
},
toStringRaw: () => {
return logs.join("");
},
restore() {
stdio.write = write;
}
};
};