@@ -32,6 +32,16 @@ describe('DiagConsoleLogger', () => {
3232 let errorCalledArgs : unknown ;
3333 let logCalledArgs : unknown ;
3434
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+
3545 beforeEach ( ( ) => {
3646 // mock
3747 console . debug = ( ...args : unknown [ ] ) => {
@@ -62,8 +72,16 @@ describe('DiagConsoleLogger', () => {
6272 errorCalledArgs = null ;
6373 logCalledArgs = null ;
6474 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+ }
6785 console . debug = origDebug ;
6886 console . info = origInfo ;
6987 console . warn = origWarn ;
@@ -265,66 +283,68 @@ describe('DiagConsoleLogger', () => {
265283 assert . deepStrictEqual ( infoCalledArgs , null ) ;
266284 } ) ;
267285
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- } ;
286+ if ( canMockConsole ) {
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+ } ;
277296
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+ } ) ;
298317
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+ } ;
308327
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+ }
329349 } ) ;
330350} ) ;
0 commit comments