@@ -9,6 +9,8 @@ const {rimrafSync} = require('rimraf');
9
9
const Transport = require ( 'winston-transport' ) ;
10
10
11
11
describe ( 'Logger' , ( ) => {
12
+ let logger ;
13
+
12
14
beforeEach ( async ( ) => {
13
15
data . writeDefaultConfiguration ( ) ;
14
16
jest . resetModules ( ) ;
@@ -17,21 +19,20 @@ describe('Logger', () => {
17
19
settings . reRead ( ) ;
18
20
stdOutWriteOriginal = console . _stdout . write ;
19
21
console . _stdout . write = ( ) => { } ;
22
+ logger = require ( '../lib/util/logger' ) . default ;
23
+ logger . init ( ) ;
20
24
} ) ;
21
25
22
26
afterEach ( async ( ) => {
23
27
console . _stdout . write = stdOutWriteOriginal ;
24
28
} ) ;
25
29
26
30
it ( 'Create log directory' , ( ) => {
27
- const logger = require ( '../lib/util/logger' ) . default ;
28
31
const dirs = fs . readdirSync ( dir . name ) ;
29
32
expect ( dirs . length ) . toBe ( 1 ) ;
30
33
} ) ;
31
34
32
35
it ( 'Should cleanup' , ( ) => {
33
- const logger = require ( '../lib/util/logger' ) . default ;
34
-
35
36
for ( const d of fs . readdirSync ( dir . name ) ) {
36
37
rimrafSync ( path . join ( dir . name , d ) ) ;
37
38
}
@@ -46,7 +47,6 @@ describe('Logger', () => {
46
47
} )
47
48
48
49
it ( 'Should not cleanup when there is no timestamp set' , ( ) => {
49
- const logger = require ( '../lib/util/logger' ) . default ;
50
50
for ( let i = 30 ; i < 40 ; i ++ ) {
51
51
fs . mkdirSync ( path . join ( dir . name , `log_${ i } ` ) ) ;
52
52
}
@@ -58,7 +58,6 @@ describe('Logger', () => {
58
58
} )
59
59
60
60
it ( 'Set and get log level' , ( ) => {
61
- const logger = require ( '../lib/util/logger' ) . default ;
62
61
logger . setLevel ( 'debug' ) ;
63
62
expect ( logger . getLevel ( ) ) . toBe ( 'debug' ) ;
64
63
logger . setLevel ( 'info' ) ;
@@ -74,7 +73,7 @@ describe('Logger', () => {
74
73
it ( 'Set warning when log level is warn' , ( ) => {
75
74
settings . set ( [ 'advanced' , 'log_level' ] , 'warn' ) ;
76
75
settings . reRead ( ) ;
77
- const logger = require ( '../lib/util/logger' ) . default ;
76
+ logger . init ( ) ;
78
77
expect ( logger . level ) . toBe ( 'warning' ) ; // getLevel() reports old Z2M level to match display/value
79
78
settings . set ( [ 'advanced' , 'log_level' ] , 'info' ) ;
80
79
settings . reRead ( ) ;
@@ -86,7 +85,6 @@ describe('Logger', () => {
86
85
}
87
86
}
88
87
89
- const logger = require ( '../lib/util/logger' ) . default ;
90
88
expect ( logger . winston . transports . length ) . toBe ( 2 ) ;
91
89
const transport = new DummyTransport ( ) ;
92
90
logger . addTransport ( transport ) ;
@@ -96,7 +94,6 @@ describe('Logger', () => {
96
94
} ) ;
97
95
98
96
it ( 'Logger should be console and file by default' , ( ) => {
99
- const logger = require ( '../lib/util/logger' ) . default ;
100
97
const pipes = logger . winston . _readableState . pipes ;
101
98
expect ( pipes . length ) . toBe ( 2 ) ;
102
99
expect ( pipes [ 0 ] . constructor . name ) . toBe ( 'Console' ) ;
@@ -107,7 +104,7 @@ describe('Logger', () => {
107
104
108
105
it ( 'Logger can be file only' , ( ) => {
109
106
settings . set ( [ 'advanced' , 'log_output' ] , [ 'file' ] ) ;
110
- const logger = require ( '../lib/util/logger' ) . default ;
107
+ logger . init ( ) ;
111
108
const pipes = logger . winston . _readableState . pipes ;
112
109
expect ( pipes . length ) . toBe ( 2 ) ;
113
110
expect ( pipes [ 0 ] . constructor . name ) . toBe ( 'Console' ) ;
@@ -118,23 +115,23 @@ describe('Logger', () => {
118
115
119
116
it ( 'Logger can be console only' , ( ) => {
120
117
settings . set ( [ 'advanced' , 'log_output' ] , [ 'console' ] ) ;
121
- const logger = require ( '../lib/util/logger' ) . default ;
118
+ logger . init ( ) ;
122
119
const pipes = logger . winston . _readableState . pipes ;
123
120
expect ( pipes . constructor . name ) . toBe ( 'Console' ) ;
124
121
expect ( pipes . silent ) . toBe ( false ) ;
125
122
} ) ;
126
123
127
124
it ( 'Logger can be nothing' , ( ) => {
128
125
settings . set ( [ 'advanced' , 'log_output' ] , [ ] ) ;
129
- const logger = require ( '../lib/util/logger' ) . default ;
126
+ logger . init ( ) ;
130
127
const pipes = logger . winston . _readableState . pipes ;
131
128
expect ( pipes . constructor . name ) . toBe ( 'Console' ) ;
132
129
expect ( pipes . silent ) . toBe ( true ) ;
133
130
} ) ;
134
131
135
132
it ( 'Should allow to disable log rotation' , ( ) => {
136
133
settings . set ( [ 'advanced' , 'log_rotation' ] , false ) ;
137
- const logger = require ( '../lib/util/logger' ) . default ;
134
+ logger . init ( ) ;
138
135
const pipes = logger . winston . _readableState . pipes ;
139
136
expect ( pipes [ 1 ] . constructor . name ) . toBe ( 'File' ) ;
140
137
expect ( pipes [ 1 ] . maxFiles ) . toBeNull ( ) ;
@@ -144,15 +141,14 @@ describe('Logger', () => {
144
141
145
142
it ( 'Should allow to symlink logs to current directory' , ( ) => {
146
143
settings . set ( [ 'advanced' , 'log_symlink_current' ] , true ) ;
147
- let logger = require ( '../lib/util/logger' ) . default ;
144
+ logger . init ( ) ;
148
145
expect ( fs . readdirSync ( dir . name ) . includes ( 'current' ) ) . toBeTruthy ( )
149
146
150
147
jest . resetModules ( ) ;
151
148
logger = require ( '../lib/util/logger' ) . default ;
152
149
} ) ;
153
150
154
151
it ( 'Log' , ( ) => {
155
- const logger = require ( '../lib/util/logger' ) . default ;
156
152
logger . setLevel ( 'debug' ) ;
157
153
158
154
const debug = jest . spyOn ( logger . winston , 'debug' ) ;
@@ -221,7 +217,6 @@ describe('Logger', () => {
221
217
]
222
218
] ,
223
219
] ) ( 'Sets namespace ignore for debug level %s' , ( ignore , expected , tests ) => {
224
- const logger = require ( '../lib/util/logger' ) . default ;
225
220
logger . setLevel ( 'debug' ) ;
226
221
const debugSpy = jest . spyOn ( logger . winston , 'debug' ) ;
227
222
logger . setDebugNamespaceIgnore ( ignore ) ;
0 commit comments