@@ -32,6 +32,16 @@ describe('DiagConsoleLogger', () => {
32
32
let errorCalledArgs : unknown ;
33
33
let logCalledArgs : unknown ;
34
34
35
+ let canMockConsole = true ;
36
+
37
+ try {
38
+ // eslint-disable-next-line no-global-assign
39
+ console = origConsole ;
40
+ } catch ( ex ) {
41
+ // Not supported on CI pipeline (works locally)
42
+ canMockConsole = false ;
43
+ }
44
+
35
45
beforeEach ( ( ) => {
36
46
// mock
37
47
console . debug = ( ...args : unknown [ ] ) => {
@@ -62,8 +72,16 @@ describe('DiagConsoleLogger', () => {
62
72
errorCalledArgs = null ;
63
73
logCalledArgs = null ;
64
74
traceCalledArgs = null ;
65
- // eslint-disable-next-line no-global-assign
66
- console = origConsole ;
75
+
76
+ if ( canMockConsole ) {
77
+ try {
78
+ // eslint-disable-next-line no-global-assign
79
+ console = origConsole ;
80
+ } catch ( ex ) {
81
+ // Not supported on CI pipeline
82
+ canMockConsole = false ;
83
+ }
84
+ }
67
85
console . debug = origDebug ;
68
86
console . info = origInfo ;
69
87
console . warn = origWarn ;
@@ -221,110 +239,112 @@ describe('DiagConsoleLogger', () => {
221
239
] ) ;
222
240
} ) ;
223
241
224
- it ( 'should not throw even when console is not supported' , ( ) => {
225
- ( console as any ) = undefined ;
226
- const consoleLogger = new DiagConsoleLogger ( ) ;
227
- consoleLogger . terminal ( 'terminal called %s' , 'param1' ) ;
228
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
229
- consoleLogger . critical ( 'critical called %s' , 'param1' ) ;
230
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
231
- consoleLogger . error ( 'error called %s' , 'param1' ) ;
232
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
233
- consoleLogger . warn ( 'warn called %s' , 'param1' ) ;
234
- assert . deepStrictEqual ( warnCalledArgs , null ) ;
235
- consoleLogger . info ( 'info called %s' , 'param1' ) ;
236
- assert . deepStrictEqual ( infoCalledArgs , null ) ;
237
- consoleLogger . debug ( 'debug called %s' , 'param1' ) ;
238
- assert . deepStrictEqual ( debugCalledArgs , null ) ;
239
- consoleLogger . trace ( 'trace called %s' , 'param1' ) ;
240
- assert . deepStrictEqual ( traceCalledArgs , null ) ;
241
- assert . deepStrictEqual ( logCalledArgs , null ) ;
242
- consoleLogger . forcedInfo ( 'forcedInfo called %s' , 'param1' ) ;
243
- assert . deepStrictEqual ( infoCalledArgs , null ) ;
244
- } ) ;
242
+ if ( canMockConsole ) {
243
+ it ( 'should not throw even when console is not supported' , ( ) => {
244
+ ( console as any ) = undefined ;
245
+ const consoleLogger = new DiagConsoleLogger ( ) ;
246
+ consoleLogger . terminal ( 'terminal called %s' , 'param1' ) ;
247
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
248
+ consoleLogger . critical ( 'critical called %s' , 'param1' ) ;
249
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
250
+ consoleLogger . error ( 'error called %s' , 'param1' ) ;
251
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
252
+ consoleLogger . warn ( 'warn called %s' , 'param1' ) ;
253
+ assert . deepStrictEqual ( warnCalledArgs , null ) ;
254
+ consoleLogger . info ( 'info called %s' , 'param1' ) ;
255
+ assert . deepStrictEqual ( infoCalledArgs , null ) ;
256
+ consoleLogger . debug ( 'debug called %s' , 'param1' ) ;
257
+ assert . deepStrictEqual ( debugCalledArgs , null ) ;
258
+ consoleLogger . trace ( 'trace called %s' , 'param1' ) ;
259
+ assert . deepStrictEqual ( traceCalledArgs , null ) ;
260
+ assert . deepStrictEqual ( logCalledArgs , null ) ;
261
+ consoleLogger . forcedInfo ( 'forcedInfo called %s' , 'param1' ) ;
262
+ assert . deepStrictEqual ( infoCalledArgs , null ) ;
263
+ } ) ;
245
264
246
- it ( 'should not throw even when console is disabled after construction' , ( ) => {
247
- const consoleLogger = new DiagConsoleLogger ( ) ;
248
- ( console as any ) = undefined ;
249
- consoleLogger . terminal ( 'terminal called %s' , 'param1' ) ;
250
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
251
- consoleLogger . critical ( 'critical called %s' , 'param1' ) ;
252
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
253
- consoleLogger . error ( 'error called %s' , 'param1' ) ;
254
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
255
- consoleLogger . warn ( 'warn called %s' , 'param1' ) ;
256
- assert . deepStrictEqual ( warnCalledArgs , null ) ;
257
- consoleLogger . info ( 'info called %s' , 'param1' ) ;
258
- assert . deepStrictEqual ( infoCalledArgs , null ) ;
259
- consoleLogger . debug ( 'debug called %s' , 'param1' ) ;
260
- assert . deepStrictEqual ( debugCalledArgs , null ) ;
261
- consoleLogger . trace ( 'trace called %s' , 'param1' ) ;
262
- assert . deepStrictEqual ( traceCalledArgs , null ) ;
263
- assert . deepStrictEqual ( logCalledArgs , null ) ;
264
- consoleLogger . forcedInfo ( 'forcedInfo called %s' , 'param1' ) ;
265
- assert . deepStrictEqual ( infoCalledArgs , null ) ;
266
- } ) ;
265
+ it ( 'should not throw even when console is disabled after construction' , ( ) => {
266
+ const consoleLogger = new DiagConsoleLogger ( ) ;
267
+ ( console as any ) = undefined ;
268
+ consoleLogger . terminal ( 'terminal called %s' , 'param1' ) ;
269
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
270
+ consoleLogger . critical ( 'critical called %s' , 'param1' ) ;
271
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
272
+ consoleLogger . error ( 'error called %s' , 'param1' ) ;
273
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
274
+ consoleLogger . warn ( 'warn called %s' , 'param1' ) ;
275
+ assert . deepStrictEqual ( warnCalledArgs , null ) ;
276
+ consoleLogger . info ( 'info called %s' , 'param1' ) ;
277
+ assert . deepStrictEqual ( infoCalledArgs , null ) ;
278
+ consoleLogger . debug ( 'debug called %s' , 'param1' ) ;
279
+ assert . deepStrictEqual ( debugCalledArgs , null ) ;
280
+ consoleLogger . trace ( 'trace called %s' , 'param1' ) ;
281
+ assert . deepStrictEqual ( traceCalledArgs , null ) ;
282
+ assert . deepStrictEqual ( logCalledArgs , null ) ;
283
+ consoleLogger . forcedInfo ( 'forcedInfo called %s' , 'param1' ) ;
284
+ assert . deepStrictEqual ( infoCalledArgs , null ) ;
285
+ } ) ;
267
286
268
- it ( 'should not throw even when console is invalid after construction' , ( ) => {
269
- const invalidConsole = {
270
- debug : 1 ,
271
- warn : 2 ,
272
- error : 3 ,
273
- trace : 4 ,
274
- info : 5 ,
275
- log : 6 ,
276
- } ;
287
+ it ( 'should not throw even when console is invalid after construction' , ( ) => {
288
+ const invalidConsole = {
289
+ debug : 1 ,
290
+ warn : 2 ,
291
+ error : 3 ,
292
+ trace : 4 ,
293
+ info : 5 ,
294
+ log : 6 ,
295
+ } ;
277
296
278
- const consoleLogger = new DiagConsoleLogger ( ) ;
279
- ( console as any ) = invalidConsole ;
280
- consoleLogger . terminal ( 'terminal called %s' , 'param1' ) ;
281
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
282
- consoleLogger . critical ( 'critical called %s' , 'param1' ) ;
283
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
284
- consoleLogger . error ( 'error called %s' , 'param1' ) ;
285
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
286
- consoleLogger . warn ( 'warn called %s' , 'param1' ) ;
287
- assert . deepStrictEqual ( warnCalledArgs , null ) ;
288
- consoleLogger . info ( 'info called %s' , 'param1' ) ;
289
- assert . deepStrictEqual ( infoCalledArgs , null ) ;
290
- consoleLogger . debug ( 'debug called %s' , 'param1' ) ;
291
- assert . deepStrictEqual ( debugCalledArgs , null ) ;
292
- consoleLogger . trace ( 'trace called %s' , 'param1' ) ;
293
- assert . deepStrictEqual ( traceCalledArgs , null ) ;
294
- assert . deepStrictEqual ( logCalledArgs , null ) ;
295
- consoleLogger . forcedInfo ( 'forcedInfo called %s' , 'param1' ) ;
296
- assert . deepStrictEqual ( infoCalledArgs , null ) ;
297
- } ) ;
297
+ const consoleLogger = new DiagConsoleLogger ( ) ;
298
+ ( console as any ) = invalidConsole ;
299
+ consoleLogger . terminal ( 'terminal called %s' , 'param1' ) ;
300
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
301
+ consoleLogger . critical ( 'critical called %s' , 'param1' ) ;
302
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
303
+ consoleLogger . error ( 'error called %s' , 'param1' ) ;
304
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
305
+ consoleLogger . warn ( 'warn called %s' , 'param1' ) ;
306
+ assert . deepStrictEqual ( warnCalledArgs , null ) ;
307
+ consoleLogger . info ( 'info called %s' , 'param1' ) ;
308
+ assert . deepStrictEqual ( infoCalledArgs , null ) ;
309
+ consoleLogger . debug ( 'debug called %s' , 'param1' ) ;
310
+ assert . deepStrictEqual ( debugCalledArgs , null ) ;
311
+ consoleLogger . trace ( 'trace called %s' , 'param1' ) ;
312
+ assert . deepStrictEqual ( traceCalledArgs , null ) ;
313
+ assert . deepStrictEqual ( logCalledArgs , null ) ;
314
+ consoleLogger . forcedInfo ( 'forcedInfo called %s' , 'param1' ) ;
315
+ assert . deepStrictEqual ( infoCalledArgs , null ) ;
316
+ } ) ;
298
317
299
- it ( 'should not throw even when console is invalid before construction' , ( ) => {
300
- const invalidConsole = {
301
- debug : 1 ,
302
- warn : 2 ,
303
- error : 3 ,
304
- trace : 4 ,
305
- info : 5 ,
306
- log : 6 ,
307
- } ;
318
+ it ( 'should not throw even when console is invalid before construction' , ( ) => {
319
+ const invalidConsole = {
320
+ debug : 1 ,
321
+ warn : 2 ,
322
+ error : 3 ,
323
+ trace : 4 ,
324
+ info : 5 ,
325
+ log : 6 ,
326
+ } ;
308
327
309
- ( console as any ) = invalidConsole ;
310
- const consoleLogger = new DiagConsoleLogger ( ) ;
311
- consoleLogger . terminal ( 'terminal called %s' , 'param1' ) ;
312
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
313
- consoleLogger . critical ( 'critical called %s' , 'param1' ) ;
314
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
315
- consoleLogger . error ( 'error called %s' , 'param1' ) ;
316
- assert . deepStrictEqual ( errorCalledArgs , null ) ;
317
- consoleLogger . warn ( 'warn called %s' , 'param1' ) ;
318
- assert . deepStrictEqual ( warnCalledArgs , null ) ;
319
- consoleLogger . info ( 'info called %s' , 'param1' ) ;
320
- assert . deepStrictEqual ( infoCalledArgs , null ) ;
321
- consoleLogger . debug ( 'debug called %s' , 'param1' ) ;
322
- assert . deepStrictEqual ( debugCalledArgs , null ) ;
323
- consoleLogger . trace ( 'trace called %s' , 'param1' ) ;
324
- assert . deepStrictEqual ( traceCalledArgs , null ) ;
325
- assert . deepStrictEqual ( logCalledArgs , null ) ;
326
- consoleLogger . forcedInfo ( 'forcedInfo called %s' , 'param1' ) ;
327
- assert . deepStrictEqual ( infoCalledArgs , null ) ;
328
- } ) ;
328
+ ( console as any ) = invalidConsole ;
329
+ const consoleLogger = new DiagConsoleLogger ( ) ;
330
+ consoleLogger . terminal ( 'terminal called %s' , 'param1' ) ;
331
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
332
+ consoleLogger . critical ( 'critical called %s' , 'param1' ) ;
333
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
334
+ consoleLogger . error ( 'error called %s' , 'param1' ) ;
335
+ assert . deepStrictEqual ( errorCalledArgs , null ) ;
336
+ consoleLogger . warn ( 'warn called %s' , 'param1' ) ;
337
+ assert . deepStrictEqual ( warnCalledArgs , null ) ;
338
+ consoleLogger . info ( 'info called %s' , 'param1' ) ;
339
+ assert . deepStrictEqual ( infoCalledArgs , null ) ;
340
+ consoleLogger . debug ( 'debug called %s' , 'param1' ) ;
341
+ assert . deepStrictEqual ( debugCalledArgs , null ) ;
342
+ consoleLogger . trace ( 'trace called %s' , 'param1' ) ;
343
+ assert . deepStrictEqual ( traceCalledArgs , null ) ;
344
+ assert . deepStrictEqual ( logCalledArgs , null ) ;
345
+ consoleLogger . forcedInfo ( 'forcedInfo called %s' , 'param1' ) ;
346
+ assert . deepStrictEqual ( infoCalledArgs , null ) ;
347
+ } ) ;
348
+ }
329
349
} ) ;
330
350
} ) ;
0 commit comments