increased test coverage for smtp appender

This commit is contained in:
Gareth Jones
2013-06-05 18:30:11 +10:00
parent 41ddf5eea7
commit 11fe5bde5f
2 changed files with 89 additions and 26 deletions

View File

@@ -22,32 +22,31 @@ function smtpAppender(config, layout) {
var sendTimer;
function sendBuffer() {
if (logEventBuffer.length === 0) {
return;
}
if (logEventBuffer.length > 0) {
var transport = mailer.createTransport(config.transport, config[config.transport]);
var firstEvent = logEventBuffer[0];
var body = "";
while (logEventBuffer.length > 0) {
body += layout(logEventBuffer.shift()) + "\n";
}
var msg = {
to: config.recipients,
subject: config.subject || subjectLayout(firstEvent),
text: body,
headers: {"Hostname": os.hostname()}
};
if (config.sender) {
msg.from = config.sender;
var transport = mailer.createTransport(config.transport, config[config.transport]);
var firstEvent = logEventBuffer[0];
var body = logEventBuffer.map(layout).join('\n');
var msg = {
to: config.recipients,
subject: config.subject || subjectLayout(firstEvent),
text: body,
headers: { "Hostname": os.hostname() }
};
if (config.sender) {
msg.from = config.sender;
}
transport.sendMail(msg, function(error, success) {
if (error) {
console.error("log4js.smtpAppender - Error happened", error);
}
transport.close();
});
logEventBuffer = [];
}
transport.sendMail(msg, function(error, success) {
if (error) {
console.error("log4js.smtpAppender - Error happened ", error);
}
transport.close();
});
}
function scheduleSend() {