|
1 | 1 | import assert from 'assert' |
2 | 2 | import os from 'os' |
3 | 3 | import sinon from 'sinon' |
| 4 | +import debug from 'debug' |
4 | 5 | import { startTimeKey } from '../src/serializers/res.js' |
5 | 6 | import { LogEcs, ecsSerializers } from '../src/ecs/index.js' |
6 | 7 | import { httpLogs, logger } from '../src/index.js' |
@@ -413,4 +414,50 @@ describe('LogEcs', function () { |
413 | 414 | ) |
414 | 415 | }) |
415 | 416 | }) |
| 417 | + |
| 418 | + describe('wrap console', function () { |
| 419 | + let unwrap |
| 420 | + before(function () { |
| 421 | + unwrap = LogEcs.wrapConsole('test', { |
| 422 | + level: 'trace', |
| 423 | + namespaces: 'test' |
| 424 | + }) |
| 425 | + }) |
| 426 | + after(function () { |
| 427 | + unwrap() |
| 428 | + }) |
| 429 | + |
| 430 | + it('shall wrap console.log', function () { |
| 431 | + console.log('log %s', 'log') |
| 432 | + console.trace('trace') |
| 433 | + console.debug({ debug: true }) |
| 434 | + console.info('log %j', { info: 1 }) |
| 435 | + console.warn('warn') |
| 436 | + console.error(new Error('Baam')) |
| 437 | + }) |
| 438 | + |
| 439 | + it('shall not wrap console twice', function () { |
| 440 | + const unwrap1 = LogEcs.wrapConsole('test1') |
| 441 | + const unwrap2 = LogEcs.wrapConsole('test2') |
| 442 | + assert.strictEqual(unwrap1, unwrap) |
| 443 | + assert.strictEqual(unwrap2, unwrap) |
| 444 | + }) |
| 445 | + }) |
| 446 | + |
| 447 | + describe('wrap debug', function () { |
| 448 | + let unwrap |
| 449 | + before(function () { |
| 450 | + const options = { level: 'debug', namespaces: '*' } |
| 451 | + unwrap = LogEcs.wrapDebug(options) |
| 452 | + }) |
| 453 | + after(function () { |
| 454 | + unwrap() |
| 455 | + }) |
| 456 | + |
| 457 | + it('shall wrap debug', function () { |
| 458 | + const log = debug('namespace') |
| 459 | + log.enabled = '*' |
| 460 | + log('hello %s', 'log') |
| 461 | + }) |
| 462 | + }) |
416 | 463 | }) |
0 commit comments