FIX: missing test cases for %M, %C, %A and %F fields

This commit is contained in:
Pawel Soltys 2022-09-01 12:49:14 +02:00
parent 397b06e15f
commit 4360da010f
2 changed files with 24 additions and 15 deletions

View File

@ -69,11 +69,19 @@ test('LoggingEvent', (batch) => {
const fileName = '/log4js-node/test/tap/layouts-test.js';
const lineNumber = 1;
const columnNumber = 14;
const className = '';
const functionName = '';
const functionAlias = '';
const callerName = '';
const location = {
functionName,
fileName,
lineNumber,
columnNumber,
callStack,
className,
functionAlias,
callerName,
};
const event = new LoggingEvent(
'cheese',
@ -82,10 +90,14 @@ test('LoggingEvent', (batch) => {
{ user: 'bob' },
location
);
t.equal(event.functionName, functionName);
t.equal(event.fileName, fileName);
t.equal(event.lineNumber, lineNumber);
t.equal(event.columnNumber, columnNumber);
t.equal(event.callStack, callStack);
t.equal(event.className, className);
t.equal(event.functionAlias, functionAlias);
t.equal(event.callerName, callerName);
const event2 = new LoggingEvent('cheese', levels.DEBUG, ['log message'], {
user: 'bob',
@ -94,6 +106,9 @@ test('LoggingEvent', (batch) => {
t.equal(event2.lineNumber, undefined);
t.equal(event2.columnNumber, undefined);
t.equal(event2.callStack, undefined);
t.equal(event2.className, undefined);
t.equal(event2.functionAlias, undefined);
t.equal(event2.callerName, undefined);
t.end();
});
@ -253,20 +268,5 @@ test('LoggingEvent', (batch) => {
t.end();
});
batch.test('Should not contain names if location not provided', (t) => {
const event2 = new LoggingEvent('cheese', levels.DEBUG, ['log message'], {
user: 'bob',
});
t.equal(event2.functionName, undefined);
t.equal(event2.fileName, undefined);
t.equal(event2.lineNumber, undefined);
t.equal(event2.columnNumber, undefined);
t.equal(event2.callStack, undefined);
t.equal(event2.className, undefined);
t.equal(event2.functionAlias, undefined);
t.equal(event2.callerName, undefined);
t.end();
});
batch.end();
});

View File

@ -295,6 +295,15 @@ test('../../lib/logger', (batch) => {
t.equal(results.functionAlias, '');
t.equal(results.callerName, '');
const callStack5 =
' at Foo.bar (repl:1:14)\n at ContextifyScript.Script.runInThisContext (vm.js:50:33)\n at REPLServer.defaultEval (repl.js:240:29)\n at bound (domain.js:301:14)\n at REPLServer.runBound [as eval] (domain.js:314:12)\n at REPLServer.onLine (repl.js:468:10)\n at emitOne (events.js:121:20)\n at REPLServer.emit (events.js:211:7)\n at REPLServer.Interface._onLine (readline.js:280:10)\n at REPLServer.Interface._line (readline.js:629:8)'; // eslint-disable-line max-len
results = logger.parseCallStack({ stack: callStack5 }, 0);
t.ok(results);
t.equal(results.className, 'Foo');
t.equal(results.functionName, 'bar');
t.equal(results.functionAlias, '');
t.equal(results.callerName, 'Foo.bar');
t.end();
});