diff --git a/test/layouts-test.js b/test/layouts-test.js index bcf6b2d..dea4fb4 100644 --- a/test/layouts-test.js +++ b/test/layouts-test.js @@ -331,5 +331,20 @@ describe('log4js layouts', function() { assert.ok(layouts.layout("coloured")); assert.ok(layouts.layout("pattern")); }); + + it('should return falsy if a layout does not exist', function() { + assert.ok(!layouts.layout("cheese")); + }); + + it('should pass config to layouts that need it', function() { + var layout = layouts.layout( + "pattern", + { + pattern: "%m" + } + ); + + assert.equal(layout({ data: [ "blah" ] }), "blah"); + }); }); }); diff --git a/test/logLevelFilter-test.js b/test/logLevelFilter-test.js index 3cabc4b..9376040 100644 --- a/test/logLevelFilter-test.js +++ b/test/logLevelFilter-test.js @@ -12,7 +12,10 @@ describe('log level filter', function() { '../lib/log4js', { requires: { './appenders/console': function() { - return function() { return function(evt) { events.push(evt); }; }; } + return function() { + return function(evt) { events.push(evt); }; + }; + } } } ); @@ -107,7 +110,7 @@ describe('log level filter', function() { "errors": { type: "logLevelFilter", allow: [ "cheese", "biscuits", "ERROR" ], - appender: { type: "console" } + appender: "console" } }, categories: { @@ -116,4 +119,23 @@ describe('log level filter', function() { }); }).should.throw(/Unrecognised log level 'cheese'\./); }); + + it('should complain if the list of levels is empty', function() { + (function() { + log4js.configure({ + appenders: { + "console": { type: "console" }, + "errors": { + type: "logLevelFilter", + allow: [], + appender: "console" + } + }, + categories: { + default: { level: "debug", appenders: [ "errors" ] } + } + }); + }).should.throw(/No allowed log levels specified\./); + }); + });