UNPKG

2.25 kBJavaScriptView Raw
1const chai = require('chai');
2const spies = require('chai-spies');
3const expect = chai.expect;
4const Logger = require('../lib/logger');
5chai.use(spies);
6
7describe('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});