Buckets:
| const test = require('tape') | |
| const pino = require('../browser') | |
| test('child has parent level', ({ end, same, is }) => { | |
| const instance = pino({ | |
| level: 'error', | |
| browser: {} | |
| }) | |
| const child = instance.child({}) | |
| same(child.level, instance.level) | |
| end() | |
| }) | |
| test('child can set level at creation time', ({ end, same, is }) => { | |
| const instance = pino({ | |
| level: 'error', | |
| browser: {} | |
| }) | |
| const child = instance.child({}, { level: 'info' }) // first bindings, then options | |
| same(child.level, 'info') | |
| end() | |
| }) | |
| test('changing child level does not affect parent', ({ end, same, is }) => { | |
| const instance = pino({ | |
| level: 'error', | |
| browser: {} | |
| }) | |
| const child = instance.child({}) | |
| child.level = 'info' | |
| same(instance.level, 'error') | |
| end() | |
| }) | |
| test('child should log, if its own level allows it', ({ end, same, is }) => { | |
| const expected = [ | |
| { | |
| level: 30, | |
| msg: 'this is info' | |
| }, | |
| { | |
| level: 40, | |
| msg: 'this is warn' | |
| }, | |
| { | |
| level: 50, | |
| msg: 'this is an error' | |
| } | |
| ] | |
| const instance = pino({ | |
| level: 'error', | |
| browser: { | |
| write (actual) { | |
| checkLogObjects(is, same, actual, expected.shift()) | |
| } | |
| } | |
| }) | |
| const child = instance.child({}) | |
| child.level = 'info' | |
| child.debug('this is debug') | |
| child.info('this is info') | |
| child.warn('this is warn') | |
| child.error('this is an error') | |
| same(expected.length, 0, 'not all messages were read') | |
| end() | |
| }) | |
| test('changing child log level should not affect parent log behavior', ({ end, same, is }) => { | |
| const expected = [ | |
| { | |
| level: 50, | |
| msg: 'this is an error' | |
| }, | |
| { | |
| level: 60, | |
| msg: 'this is fatal' | |
| } | |
| ] | |
| const instance = pino({ | |
| level: 'error', | |
| browser: { | |
| write (actual) { | |
| checkLogObjects(is, same, actual, expected.shift()) | |
| } | |
| } | |
| }) | |
| const child = instance.child({}) | |
| child.level = 'info' | |
| instance.warn('this is warn') | |
| instance.error('this is an error') | |
| instance.fatal('this is fatal') | |
| same(expected.length, 0, 'not all messages were read') | |
| end() | |
| }) | |
| test('onChild callback should be called when new child is created', ({ end, pass, plan }) => { | |
| plan(1) | |
| const instance = pino({ | |
| level: 'error', | |
| browser: {}, | |
| onChild: (_child) => { | |
| pass('onChild callback was called') | |
| end() | |
| } | |
| }) | |
| instance.child({}) | |
| }) | |
| function checkLogObjects (is, same, actual, expected) { | |
| is(actual.time <= Date.now(), true, 'time is greater than Date.now()') | |
| const actualCopy = Object.assign({}, actual) | |
| const expectedCopy = Object.assign({}, expected) | |
| delete actualCopy.time | |
| delete expectedCopy.time | |
| same(actualCopy, expectedCopy) | |
| } | |
Xet Storage Details
- Size:
- 2.72 kB
- Xet hash:
- e970ea5011a8e80a3adc1fef56420bef3e4e2a80b63b9aab1f3d829c6b19f46f
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.