1 | const chai = require('chai');
|
2 | const spies = require('chai-spies');
|
3 | const expect = chai.expect;
|
4 | const Logger = require('../lib/logger');
|
5 | chai.use(spies);
|
6 |
|
7 | describe('logger', () => {
|
8 | let logger;
|
9 |
|
10 | describe('setLogger', () => {
|
11 | let newLogger = {
|
12 | log: () => {},
|
13 | debug: () => {},
|
14 | error: () => {},
|
15 | };
|
16 |
|
17 | beforeEach(() => {
|
18 | logger = Logger.instance(newLogger);
|
19 | });
|
20 | it('should set logger', () => {
|
21 | expect(logger.transport).to.equal(newLogger);
|
22 | });
|
23 |
|
24 | it('should use newLogger log for log', () => {
|
25 | let spy = chai.spy.on(newLogger, 'log');
|
26 | logger.log('data');
|
27 | expect(spy).to.have.been.called.with('data');
|
28 | });
|
29 |
|
30 | it('should use newLogger debug for debug', () => {
|
31 | let spy = chai.spy.on(newLogger, 'debug');
|
32 | logger.debug('data');
|
33 | expect(spy).to.have.been.called.with('data');
|
34 | });
|
35 |
|
36 | it('should use newLogger error for error', () => {
|
37 | let spy = chai.spy.on(newLogger, 'error');
|
38 | logger.error('data');
|
39 | expect(spy).to.have.been.called.with('data');
|
40 | });
|
41 | });
|
42 | describe('log', () => {
|
43 | let spy;
|
44 | beforeEach(() => {
|
45 | spy = chai.spy.on(console, 'log');
|
46 | logger = Logger.instance();
|
47 | logger.log('data');
|
48 | });
|
49 |
|
50 | it('should call all console.log with data', () => {
|
51 | expect(spy).to.have.been.called.with('data');
|
52 | });
|
53 | });
|
54 | describe('debug', () => {
|
55 | let spy;
|
56 | beforeEach(() => {
|
57 | spy = chai.spy.on(console, 'debug');
|
58 | logger = new Logger();
|
59 | logger.debug('data');
|
60 | });
|
61 |
|
62 | it('should call all console.debug with data', () => {
|
63 | expect(spy).to.have.been.called.with('data');
|
64 | });
|
65 | });
|
66 | describe('error', () => {
|
67 | let spy;
|
68 | beforeEach(() => {
|
69 | spy = chai.spy.on(console, 'error');
|
70 | logger = new Logger();
|
71 | logger.error('data');
|
72 | });
|
73 |
|
74 | it('should call all console.error with data', () => {
|
75 | expect(spy).to.have.been.called.with('data');
|
76 | });
|
77 | });
|
78 | });
|