log4js-node/test/test-log-abspath.js

68 lines
2.3 KiB
JavaScript
Raw Normal View History

2012-02-08 12:55:14 +08:00
var vows = require('vows')
, assert = require('assert')
, sandbox = require('sandboxed-module');
vows.describe('log4js-abspath').addBatch({
'options': {
2012-02-08 12:55:14 +08:00
topic: function() {
var appenderOptions,
log4js = sandbox.require(
'../lib/log4js',
{ requires:
{ './appenders/fake':
{
name: "fake",
appender: function() {},
configure: function(configuration, options) {
appenderOptions = options;
return function() {};
}
}
2012-02-08 12:55:14 +08:00
}
}
),
config = {
"appenders": [
{
"type" : "fake",
"filename" : "cheesy-wotsits.log"
}
]
};
2012-02-08 12:55:14 +08:00
log4js.configure(config, {
cwd: '/absolute/path/to'
});
return appenderOptions;
2012-02-08 12:55:14 +08:00
},
'should be passed to appenders during configuration': function(options) {
assert.equal(options.cwd, '/absolute/path/to');
2012-02-08 12:55:14 +08:00
}
},
'file appender': {
2012-02-08 12:55:14 +08:00
topic: function() {
var fileOpened,
fileAppender = sandbox.require(
'../lib/appenders/file',
{ requires:
{ '../streams':
{
RollingFileStream: function(file) {
fileOpened = file;
},
BufferedWriteStream: function(other) {
return { on: function() { }, end: function() {} }
}
2012-02-08 12:55:14 +08:00
}
}
}
);
fileAppender.configure({ filename: "whatever.log", maxLogSize: 10 }, { cwd: '/absolute/path/to' });
return fileOpened;
2012-02-08 12:55:14 +08:00
},
'should prepend options.cwd to config.filename': function(fileOpened) {
assert.equal(fileOpened, "/absolute/path/to/whatever.log");
2012-02-08 12:55:14 +08:00
}
},
}).export(module);