UNPKG

@backstage/backend-test-utils

Version:

Test helpers library for Backstage backends

50 lines (47 loc) 1.2 kB
'use strict'; const levels = { none: 0, error: 1, warn: 2, info: 3, debug: 4 }; class MockRootLoggerService { #level; #meta; static create(options) { const level = options?.level ?? "none"; if (!(level in levels)) { throw new Error(`Invalid log level '${level}'`); } return new MockRootLoggerService(levels[level], {}); } error(message, meta) { this.#log("error", message, meta); } warn(message, meta) { this.#log("warn", message, meta); } info(message, meta) { this.#log("info", message, meta); } debug(message, meta) { this.#log("debug", message, meta); } child(meta) { return new MockRootLoggerService(this.#level, { ...this.#meta, ...meta }); } constructor(level, meta) { this.#level = level; this.#meta = meta; } #log(level, message, meta) { const levelValue = levels[level] ?? 0; if (levelValue <= this.#level) { const labels = Object.entries(this.#meta).map(([key, value]) => `${key}=${value}`).join(","); console[level](`${labels} ${message}`, meta); } } } exports.MockRootLoggerService = MockRootLoggerService; //# sourceMappingURL=MockRootLoggerService.cjs.js.map