Skip to content

Commit 74fc0db

Browse files
feat: accept level in capitals (#2034)
1 parent 470df82 commit 74fc0db

2 files changed

Lines changed: 69 additions & 0 deletions

File tree

pino.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,9 @@ const serializers = Object.assign(Object.create(null), stdSerializers)
8888
function pino (...args) {
8989
const instance = {}
9090
const { opts, stream } = normalize(instance, caller(), ...args)
91+
92+
if (opts.level && typeof opts.level === 'string' && DEFAULT_LEVELS[opts.level.toLowerCase()] !== undefined) opts.level = opts.level.toLowerCase()
93+
9194
const {
9295
redact,
9396
crlf,

test/levels.test.js

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -704,3 +704,69 @@ test('trying to get levels when `this` is no longer a Pino instance returns an e
704704
const blankedLevelValue = notPinoInstance.getLevel()
705705
equal(blankedLevelValue, '')
706706
})
707+
708+
test('accepts capital letter for INFO level', async ({ equal }) => {
709+
const stream = sink()
710+
const logger = pino({
711+
level: 'INFO'
712+
}, stream)
713+
714+
logger.info('test')
715+
const { level } = await once(stream, 'data')
716+
equal(level, 30)
717+
})
718+
719+
test('accepts capital letter for FATAL level', async ({ equal }) => {
720+
const stream = sink()
721+
const logger = pino({
722+
level: 'FATAL'
723+
}, stream)
724+
725+
logger.fatal('test')
726+
const { level } = await once(stream, 'data')
727+
equal(level, 60)
728+
})
729+
730+
test('accepts capital letter for ERROR level', async ({ equal }) => {
731+
const stream = sink()
732+
const logger = pino({
733+
level: 'ERROR'
734+
}, stream)
735+
736+
logger.error('test')
737+
const { level } = await once(stream, 'data')
738+
equal(level, 50)
739+
})
740+
741+
test('accepts capital letter for WARN level', async ({ equal }) => {
742+
const stream = sink()
743+
const logger = pino({
744+
level: 'WARN'
745+
}, stream)
746+
747+
logger.warn('test')
748+
const { level } = await once(stream, 'data')
749+
equal(level, 40)
750+
})
751+
752+
test('accepts capital letter for DEBUG level', async ({ equal }) => {
753+
const stream = sink()
754+
const logger = pino({
755+
level: 'DEBUG'
756+
}, stream)
757+
758+
logger.debug('test')
759+
const { level } = await once(stream, 'data')
760+
equal(level, 20)
761+
})
762+
763+
test('accepts capital letter for TRACE level', async ({ equal }) => {
764+
const stream = sink()
765+
const logger = pino({
766+
level: 'TRACE'
767+
}, stream)
768+
769+
logger.trace('test')
770+
const { level } = await once(stream, 'data')
771+
equal(level, 10)
772+
})

0 commit comments

Comments
 (0)