roarr
Version:
JSON logger for Node.js and browser.
34 lines • 1.24 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createMockLogger = void 0;
const constants_1 = require("../constants");
const noopLevelMethod = () => {
return undefined;
};
const mockLoggerPrototype = Object.create(Function.prototype);
mockLoggerPrototype.adopt = async function (_routine) {
return _routine();
};
mockLoggerPrototype.child = function () {
// eslint-disable-next-line @typescript-eslint/no-use-before-define
return (0, exports.createMockLogger)(this.onMessage, this.parentMessageContext);
};
mockLoggerPrototype.getContext = function () {
return {};
};
for (const logLevelName of Object.keys(constants_1.logLevels)) {
mockLoggerPrototype[logLevelName] = noopLevelMethod;
mockLoggerPrototype[logLevelName + 'Once'] = noopLevelMethod;
}
const createMockLogger = (onMessage, parentContext) => {
// eslint-disable-next-line unicorn/consistent-function-scoping
const log = () => {
return undefined;
};
log.onMessage = onMessage;
log.parentMessageContext = parentContext;
Object.setPrototypeOf(log, mockLoggerPrototype);
return log;
};
exports.createMockLogger = createMockLogger;
//# sourceMappingURL=createMockLogger.js.map