From 3288083bec366dff86b64815707d7e8119d48deb Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Mon, 13 Nov 2017 10:48:43 -0500 Subject: [PATCH] Add test coverage `ignorePaths` --- index.js | 2 +- test.js | 38 +++++++++++++++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/index.js b/index.js index 58d733b..35bc1dd 100644 --- a/index.js +++ b/index.js @@ -63,7 +63,7 @@ async function register (server, options) { server.ext('onRequest', (request, h) => { if (options.ignorePaths && ignoreTable[request.url.path]) { request.logger = nullLogger - return h.continue() + return h.continue } request.logger = logger.child({ req: request }) return h.continue diff --git a/test.js b/test.js index d53728c..3103ac7 100644 --- a/test.js +++ b/test.js @@ -612,7 +612,7 @@ experiment('uses a prior pino instance', () => { } await server.register(plugin) - server.logger().info({foo: 'bar'}, 'hello world') + server.logger().info({ foo: 'bar' }, 'hello world') await finish }) }) @@ -789,3 +789,39 @@ experiment('logging with request payload', () => { await done }) }) + +experiment('ignore request logs for paths in ignorePaths', () => { + test('when path matches entry in ignorePaths, nothing should be logged', async () => { + const server = getServer() + let resolver + const done = new Promise((resolve, reject) => { + resolver = resolve + }) + const stream = sink((data) => { + expect(data.req.url).to.not.equal('/ignored') + resolver() + }) + const logger = require('pino')(stream) + const plugin = { + plugin: Pino, + options: { + instance: logger, + ignorePaths: ['/ignored'] + } + } + + await server.register(plugin) + + await server.inject({ + method: 'PUT', + url: '/ignored' + }) + + await server.inject({ + method: 'PUT', + url: '/' + + }) + await done + }) +})