/
console.js
27 lines (24 loc) · 999 Bytes
/
console.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Thanks in part to https://stackoverflow.com/questions/11403107/capturing-javascript-console-log
module.exports = function() {
'use strict';
var consoleUtils = require('./console-utils');
var originalConsoleLogger = console.log; // eslint-disable-line no-console
var originalConsoleError = console.error;
console.error = function(loggedItem) {
consoleUtils.writeOutput(loggedItem);
// do not swallow console.error
originalConsoleError.apply(console, arguments);
};
// eslint-disable-next-line no-console
console.log = function() {
var formattedList = [];
for (var i = 0, l = arguments.length; i < l; i++) {
var formatted = consoleUtils.formatOutput(arguments[i]);
formattedList.push(formatted);
}
var output = formattedList.join(' ');
consoleUtils.writeOutput(output);
// do not swallow console.log
originalConsoleLogger.apply(console, arguments);
};
};