From f2fd122c30c2528daa056ccc15707e2e6ad02445 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iva=CC=81n=20Zaera=20Avello=CC=81n?= Date: Wed, 14 Mar 2018 17:48:32 +0100 Subject: [PATCH] Return a dummy PluginLogger if none is registered. Fixes #85 --- .../src/__tests__/plugin-logger.test.js | 12 ++++++++++-- .../src/plugin-logger.js | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/liferay-npm-build-tools-common/src/__tests__/plugin-logger.test.js b/packages/liferay-npm-build-tools-common/src/__tests__/plugin-logger.test.js index 53d8d9a0..5bf4f379 100644 --- a/packages/liferay-npm-build-tools-common/src/__tests__/plugin-logger.test.js +++ b/packages/liferay-npm-build-tools-common/src/__tests__/plugin-logger.test.js @@ -37,10 +37,18 @@ describe('when using PlugginLogger registration', () => { PluginLogger.set('a-key', logger); - expect(PluginLogger.get('a-key')).toBe(logger); + logger.info('source', 'hi'); + + expect(PluginLogger.get('a-key').messages.length).toBe(1); + + PluginLogger.delete('a-key'); + + expect(PluginLogger.get('a-key').messages.length).toBe(0); + }); + it('returns a dummy logger if no loggers are registered', () => { PluginLogger.delete('a-key'); - expect(PluginLogger.get('a-key')).toBeUndefined(); + expect(PluginLogger.get('a-key')).toBeDefined(); }); }); diff --git a/packages/liferay-npm-build-tools-common/src/plugin-logger.js b/packages/liferay-npm-build-tools-common/src/plugin-logger.js index 0af43e15..6b0a1fb4 100644 --- a/packages/liferay-npm-build-tools-common/src/plugin-logger.js +++ b/packages/liferay-npm-build-tools-common/src/plugin-logger.js @@ -98,7 +98,7 @@ PluginLogger.get = function(key) { key = key.file.opts.filenameRelative; } - return global._PluginLogger_[key]; + return global._PluginLogger_[key] || new PluginLogger(); }; /**