mirror of
https://github.com/log4js-node/log4js-node.git
synced 2025-12-08 19:26:01 +00:00
chore(test): improve test coverage for dateFileAppender
appenders/dateFile.js - Line 13 - console.error('log4js.dateFileAppender - Writing to file %s, error happened ', filename, err); // eslint-disable-line
This commit is contained in:
parent
aa566df3f8
commit
edc612e5be
@ -188,5 +188,60 @@ test("../../lib/appenders/dateFile", batch => {
|
||||
t.end();
|
||||
});
|
||||
|
||||
batch.test("when underlying stream errors", t => {
|
||||
let consoleArgs;
|
||||
let errorHandler;
|
||||
|
||||
const DateRollingFileStream = class {
|
||||
end() {
|
||||
this.ended = true;
|
||||
}
|
||||
|
||||
on(evt, cb) {
|
||||
if (evt === "error") {
|
||||
this.errored = true;
|
||||
errorHandler = cb;
|
||||
}
|
||||
}
|
||||
|
||||
write() {
|
||||
this.written = true;
|
||||
return true;
|
||||
}
|
||||
};
|
||||
const dateFileAppender = sandbox.require("../../lib/appenders/dateFile", {
|
||||
globals: {
|
||||
console: {
|
||||
error(...args) {
|
||||
consoleArgs = args;
|
||||
}
|
||||
}
|
||||
},
|
||||
requires: {
|
||||
streamroller: {
|
||||
DateRollingFileStream
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
dateFileAppender.configure(
|
||||
{ filename: "test1.log", maxLogSize: 100 },
|
||||
{ basicLayout() {} }
|
||||
);
|
||||
errorHandler({ error: "aargh" });
|
||||
|
||||
t.test("should log the error to console.error", assert => {
|
||||
assert.ok(consoleArgs);
|
||||
assert.equal(
|
||||
consoleArgs[0],
|
||||
"log4js.dateFileAppender - Writing to file %s, error happened "
|
||||
);
|
||||
assert.equal(consoleArgs[1], "test1.log");
|
||||
assert.equal(consoleArgs[2].error, "aargh");
|
||||
assert.end();
|
||||
});
|
||||
t.end();
|
||||
});
|
||||
|
||||
batch.end();
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user