@@ -13,6 +13,8 @@ var log = require('./');
13
13
14
14
lab . describe ( 'log()' , function ( ) {
15
15
16
+ var term = process . env . TERM ;
17
+ var colorterm = process . env . COLORTERM ;
16
18
var stdout_write = process . stdout . write ;
17
19
var writtenValue = '' ;
18
20
@@ -55,6 +57,62 @@ lab.describe('log()', function(){
55
57
56
58
done ( ) ;
57
59
} ) ;
60
+
61
+ lab . it ( 'does not add color if argv contains --no-color' , function ( done ) {
62
+ // Stub process.stdout.write
63
+ process . stdout . write = writeSpy ;
64
+
65
+ process . argv . push ( '--no-color' ) ;
66
+
67
+ log ( 1 , 2 , 3 , 4 , 'five' ) ;
68
+ var time = timestamp ( 'HH:mm:ss' ) ;
69
+ code . expect ( writtenValue ) . equals ( '[' + time + '] 1 2 3 4 \'five\'\n' ) ;
70
+
71
+ // Restore process.stdout.write after test
72
+ process . stdout . write = stdout_write ;
73
+
74
+ process . argv . pop ( ) ;
75
+
76
+ done ( ) ;
77
+ } ) ;
78
+
79
+ lab . it ( 'adds color if argv contains --color' , function ( done ) {
80
+ // Stub process.stdout.write
81
+ process . stdout . write = writeSpy ;
82
+
83
+ process . argv . push ( '--color' ) ;
84
+
85
+ log ( 1 , 2 , 3 , 4 , 'five' ) ;
86
+ var time = timestamp ( 'HH:mm:ss' ) ;
87
+ code . expect ( writtenValue ) . equals ( '[' + gray ( time ) + '] 1 2 3 4 \'five\'\n' ) ;
88
+
89
+ // Restore process.stdout.write after test
90
+ process . stdout . write = stdout_write ;
91
+
92
+ process . argv . pop ( ) ;
93
+
94
+ done ( ) ;
95
+ } ) ;
96
+
97
+ lab . it ( 'does not add color if no support' , function ( done ) {
98
+ // Stub process.stdout.write
99
+ process . stdout . write = writeSpy ;
100
+
101
+ process . env . TERM = 'dumb' ;
102
+ delete process . env . COLORTERM ;
103
+
104
+ log ( 1 , 2 , 3 , 4 , 'five' ) ;
105
+ var time = timestamp ( 'HH:mm:ss' ) ;
106
+ code . expect ( writtenValue ) . equals ( '[' + time + '] 1 2 3 4 \'five\'\n' ) ;
107
+
108
+ // Restore process.stdout.write after test
109
+ process . stdout . write = stdout_write ;
110
+
111
+ process . env . TERM = term ;
112
+ process . env . COLORTERM = colorterm ;
113
+
114
+ done ( ) ;
115
+ } ) ;
58
116
} ) ;
59
117
60
118
lab . describe ( 'log.info()' , function ( ) {
0 commit comments