@@ -8,7 +8,6 @@ class TestTransport extends winston.Transport {
8
8
}
9
9
10
10
describe ( 'Logger' , ( ) => {
11
- // Test is excluded as will be refactored
12
11
it ( 'should add transport' , ( ) => {
13
12
const testTransport = new ( TestTransport ) ( {
14
13
name : 'test'
@@ -19,4 +18,45 @@ describe('Logger', () => {
19
18
expect ( testTransport . log ) . toHaveBeenCalled ( ) ;
20
19
logging . removeTransport ( testTransport ) ;
21
20
} ) ;
21
+
22
+ it ( 'should have files transports' , ( done ) => {
23
+ reconfigureServer ( ) . then ( ( ) => {
24
+ let transports = logging . logger . transports ;
25
+ let transportKeys = Object . keys ( transports ) ;
26
+ expect ( transportKeys . length ) . toBe ( 2 ) ;
27
+ done ( ) ;
28
+ } ) ;
29
+ } ) ;
30
+
31
+ it ( 'should disable files logs' , ( done ) => {
32
+ reconfigureServer ( {
33
+ logsFolder : null
34
+ } ) . then ( ( ) => {
35
+ let transports = logging . logger . transports ;
36
+ let transportKeys = Object . keys ( transports ) ;
37
+ expect ( transportKeys . length ) . toBe ( 0 ) ;
38
+ done ( ) ;
39
+ } ) ;
40
+ } ) ;
41
+
42
+ it ( 'should enable JSON logs' , ( done ) => {
43
+ // Force console transport
44
+ process . env . VERBOSE = 1 ;
45
+ reconfigureServer ( {
46
+ logsFolder : null ,
47
+ jsonLogs : true
48
+ } ) . then ( ( ) => {
49
+ let spy = spyOn ( process . stdout , 'write' ) ;
50
+ logging . logger . info ( 'hi' , { key : 'value' } ) ;
51
+ expect ( process . stdout . write ) . toHaveBeenCalled ( ) ;
52
+ var firstLog = process . stdout . write . calls . first ( ) . args [ 0 ] ;
53
+ expect ( firstLog ) . toEqual ( JSON . stringify ( { key : 'value' , level : 'info' , message : 'hi' } ) + '\n' ) ;
54
+ delete process . env . VERBOSE ;
55
+ return reconfigureServer ( {
56
+ jsonLogs : false
57
+ } ) ;
58
+ } ) . then ( ( ) => {
59
+ done ( ) ;
60
+ } ) ;
61
+ } ) ;
22
62
} ) ;
0 commit comments