From 5152ebd6f5c968c20fc5d070cfe77b05b1b36938 Mon Sep 17 00:00:00 2001 From: davidmarkclements Date: Wed, 28 Mar 2018 20:20:13 +0200 Subject: [PATCH] id defaults to undefined --- Readme.md | 2 +- lib/req.js | 2 +- test/req.test.js | 18 ++++++++++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/Readme.md b/Readme.md index 7f7e36a..5e92a8f 100644 --- a/Readme.md +++ b/Readme.md @@ -46,7 +46,7 @@ The default `request` serializer. Returns and object: ```js { - id: 'string', // Default is an empty string, unless there is an `id` property + id: 'string', // Defaults to `undefined`, unless there is an `id` property // already attached to the `request` object or to the `request.info` // object. Attach a synchronous function // to the `request.id` that returns an identifier to have diff --git a/lib/req.js b/lib/req.js index 4175b30..d2c88aa 100644 --- a/lib/req.js +++ b/lib/req.js @@ -56,7 +56,7 @@ function reqSerializer (req) { var connection = req.connection const _req = Object.create(pinoReqProto) // req.info is for hapi compat. - _req.id = (typeof req.id === 'function' ? req.id() : (req.id || (req.info && req.info.id))) || '' + _req.id = (typeof req.id === 'function' ? req.id() : (req.id || (req.info ? req.info.id : undefined))) _req.method = req.method // req.url.path is for hapi compat. _req.url = req.url ? (req.url.path || req.url) : undefined diff --git a/test/req.test.js b/test/req.test.js index 5a4f0c1..8f15c10 100644 --- a/test/req.test.js +++ b/test/req.test.js @@ -83,6 +83,24 @@ test('req.raw will be obtained in from input request raw property if input reque } }) +test('req.id defaults to undefined', function (t) { + t.plan(1) + + var server = http.createServer(handler) + server.unref() + server.listen(0, () => { + http.get(server.address(), () => {}) + }) + + t.tearDown(() => server.close()) + + function handler (req, res) { + var serialized = serializers.reqSerializer(req) + t.is(serialized.id, undefined) + res.end() + } +}) + test('req.id has a non-function value', function (t) { t.plan(1)