mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-18 15:17:25 +01:00
47 lines
1.1 KiB
JavaScript
47 lines
1.1 KiB
JavaScript
import winston from 'winston';
|
|
import logger from '../../../../../website/server/libs/logger';
|
|
|
|
describe('logger', () => {
|
|
let logSpy;
|
|
|
|
beforeEach(() => {
|
|
logSpy = sandbox.stub(winston.Logger.prototype, 'log');
|
|
});
|
|
|
|
afterEach(() => {
|
|
sandbox.restore();
|
|
});
|
|
|
|
describe('info', () => {
|
|
it('calls winston\'s info log', () => {
|
|
logger.info(1, 2, 3);
|
|
expect(logSpy).to.be.calledOnce;
|
|
expect(logSpy).to.be.calledWith('info', 1, 2, 3);
|
|
});
|
|
});
|
|
|
|
describe('error', () => {
|
|
it('passes through arguments if the first arg is not an error object', () => {
|
|
logger.error(1, 2, 3, 4);
|
|
expect(logSpy).to.be.calledOnce;
|
|
expect(logSpy).to.be.calledWith('error', 1, 2, 3, 4);
|
|
});
|
|
|
|
it('parses the error and passes it to the logger when the first arg is an error object', () => {
|
|
let errInstance = new Error('An error.');
|
|
logger.error(errInstance, {
|
|
data: 1,
|
|
}, 2, 3);
|
|
|
|
expect(logSpy).to.be.calledOnce;
|
|
expect(logSpy).to.be.calledWith(
|
|
'error',
|
|
errInstance.stack,
|
|
{ data: 1, fullError: errInstance },
|
|
2,
|
|
3
|
|
);
|
|
});
|
|
});
|
|
});
|