diff --git a/lib/log4js.js b/lib/log4js.js index 2c47dec..5ef7f4f 100644 --- a/lib/log4js.js +++ b/lib/log4js.js @@ -380,6 +380,7 @@ module.exports = function (fileSystem, standardOutput, configPaths) { } function rollThatLog (logFile, filename, numBackups) { + //doing all of this fs stuff sync, because I don't want to lose any log events. //first close the current one. fs.closeSync(logFile); //roll the backups (rename file.n-1 to file.n, where n <= numBackups) diff --git a/test/logging.js b/test/logging.js index 8045698..4e713d9 100644 --- a/test/logging.js +++ b/test/logging.js @@ -308,5 +308,22 @@ vows.describe('log4js').addBatch({ }); assert.equal(output, '\033[90m[2010-12-05 14:18:30.045] \033[39m\033[32m[ERROR] \033[39m\033[90mcheese - \033[39mnonsense'); } + }, + + 'messagePassThroughLayout': { + topic: function() { + return require('../lib/log4js')().messagePassThroughLayout; + }, + 'should take a logevent and output only the message' : function(layout) { + assert.equal(layout({ + message: "nonsense", + startTime: new Date(2010, 11, 5, 14, 18, 30, 45), + categoryName: "cheese", + level: { + colour: "green", + toString: function() { return "ERROR"; } + } + }), "nonsense"); + } } }).export(module);