@@ -360,6 +360,185 @@ describe('Logger (levels)', function () {
360
360
} ) ;
361
361
} ) ;
362
362
363
+ describe ( 'Logger (level enabled/disabled)' , function ( ) {
364
+ it ( 'default levels' , function ( ) {
365
+ var logger = winston . createLogger ( {
366
+ level : 'verbose' ,
367
+ levels : winston . config . npm . levels ,
368
+ transports : [ new winston . transports . Console ( ) ]
369
+ } ) ;
370
+
371
+ assume ( logger . isLevelEnabled ) . is . a ( 'function' ) ;
372
+
373
+ assume ( logger . isErrorEnabled ) . is . a ( 'function' ) ;
374
+ assume ( logger . isWarnEnabled ) . is . a ( 'function' ) ;
375
+ assume ( logger . isInfoEnabled ) . is . a ( 'function' ) ;
376
+ assume ( logger . isVerboseEnabled ) . is . a ( 'function' ) ;
377
+ assume ( logger . isDebugEnabled ) . is . a ( 'function' ) ;
378
+ assume ( logger . isSillyEnabled ) . is . a ( 'function' ) ;
379
+
380
+ assume ( logger . isLevelEnabled ( 'error' ) ) . true ( ) ;
381
+ assume ( logger . isLevelEnabled ( 'warn' ) ) . true ( ) ;
382
+ assume ( logger . isLevelEnabled ( 'info' ) ) . true ( ) ;
383
+ assume ( logger . isLevelEnabled ( 'verbose' ) ) . true ( ) ;
384
+ assume ( logger . isLevelEnabled ( 'debug' ) ) . false ( ) ;
385
+ assume ( logger . isLevelEnabled ( 'silly' ) ) . false ( ) ;
386
+
387
+ assume ( logger . isErrorEnabled ( ) ) . true ( ) ;
388
+ assume ( logger . isWarnEnabled ( ) ) . true ( ) ;
389
+ assume ( logger . isInfoEnabled ( ) ) . true ( ) ;
390
+ assume ( logger . isVerboseEnabled ( ) ) . true ( ) ;
391
+ assume ( logger . isDebugEnabled ( ) ) . false ( ) ;
392
+ assume ( logger . isSillyEnabled ( ) ) . false ( ) ;
393
+ } ) ;
394
+
395
+ it ( 'default levels, transport override' , function ( ) {
396
+ var transport = new winston . transports . Console ( ) ;
397
+ transport . level = 'debug' ;
398
+
399
+ var logger = winston . createLogger ( {
400
+ level : 'info' ,
401
+ levels : winston . config . npm . levels ,
402
+ transports : [ transport ]
403
+ } ) ;
404
+
405
+ assume ( logger . isLevelEnabled ) . is . a ( 'function' ) ;
406
+
407
+ assume ( logger . isErrorEnabled ) . is . a ( 'function' ) ;
408
+ assume ( logger . isWarnEnabled ) . is . a ( 'function' ) ;
409
+ assume ( logger . isInfoEnabled ) . is . a ( 'function' ) ;
410
+ assume ( logger . isVerboseEnabled ) . is . a ( 'function' ) ;
411
+ assume ( logger . isDebugEnabled ) . is . a ( 'function' ) ;
412
+ assume ( logger . isSillyEnabled ) . is . a ( 'function' ) ;
413
+
414
+ assume ( logger . isLevelEnabled ( 'error' ) ) . true ( ) ;
415
+ assume ( logger . isLevelEnabled ( 'warn' ) ) . true ( ) ;
416
+ assume ( logger . isLevelEnabled ( 'info' ) ) . true ( ) ;
417
+ assume ( logger . isLevelEnabled ( 'verbose' ) ) . true ( ) ;
418
+ assume ( logger . isLevelEnabled ( 'debug' ) ) . true ( ) ;
419
+ assume ( logger . isLevelEnabled ( 'silly' ) ) . false ( ) ;
420
+
421
+ assume ( logger . isErrorEnabled ( ) ) . true ( ) ;
422
+ assume ( logger . isWarnEnabled ( ) ) . true ( ) ;
423
+ assume ( logger . isInfoEnabled ( ) ) . true ( ) ;
424
+ assume ( logger . isVerboseEnabled ( ) ) . true ( ) ;
425
+ assume ( logger . isDebugEnabled ( ) ) . true ( ) ;
426
+ assume ( logger . isSillyEnabled ( ) ) . false ( ) ;
427
+ } ) ;
428
+
429
+ it ( 'default levels, no transports' , function ( ) {
430
+ var logger = winston . createLogger ( {
431
+ level : 'verbose' ,
432
+ levels : winston . config . npm . levels ,
433
+ transports : [ ]
434
+ } ) ;
435
+
436
+ assume ( logger . isLevelEnabled ) . is . a ( 'function' ) ;
437
+
438
+ assume ( logger . isErrorEnabled ) . is . a ( 'function' ) ;
439
+ assume ( logger . isWarnEnabled ) . is . a ( 'function' ) ;
440
+ assume ( logger . isInfoEnabled ) . is . a ( 'function' ) ;
441
+ assume ( logger . isVerboseEnabled ) . is . a ( 'function' ) ;
442
+ assume ( logger . isDebugEnabled ) . is . a ( 'function' ) ;
443
+ assume ( logger . isSillyEnabled ) . is . a ( 'function' ) ;
444
+
445
+ assume ( logger . isLevelEnabled ( 'error' ) ) . true ( ) ;
446
+ assume ( logger . isLevelEnabled ( 'warn' ) ) . true ( ) ;
447
+ assume ( logger . isLevelEnabled ( 'info' ) ) . true ( ) ;
448
+ assume ( logger . isLevelEnabled ( 'verbose' ) ) . true ( ) ;
449
+ assume ( logger . isLevelEnabled ( 'debug' ) ) . false ( ) ;
450
+ assume ( logger . isLevelEnabled ( 'silly' ) ) . false ( ) ;
451
+
452
+ assume ( logger . isErrorEnabled ( ) ) . true ( ) ;
453
+ assume ( logger . isWarnEnabled ( ) ) . true ( ) ;
454
+ assume ( logger . isInfoEnabled ( ) ) . true ( ) ;
455
+ assume ( logger . isVerboseEnabled ( ) ) . true ( ) ;
456
+ assume ( logger . isDebugEnabled ( ) ) . false ( ) ;
457
+ assume ( logger . isSillyEnabled ( ) ) . false ( ) ;
458
+ } ) ;
459
+
460
+ it ( 'custom levels' , function ( ) {
461
+ var logger = winston . createLogger ( {
462
+ level : 'test' ,
463
+ levels : {
464
+ bad : 0 ,
465
+ test : 1 ,
466
+ ok : 2
467
+ } ,
468
+ transports : [ new winston . transports . Console ( ) ]
469
+ } ) ;
470
+
471
+ assume ( logger . isLevelEnabled ) . is . a ( 'function' ) ;
472
+
473
+ assume ( logger . isBadEnabled ) . is . a ( 'function' ) ;
474
+ assume ( logger . isTestEnabled ) . is . a ( 'function' ) ;
475
+ assume ( logger . isOkEnabled ) . is . a ( 'function' ) ;
476
+
477
+ assume ( logger . isLevelEnabled ( 'bad' ) ) . true ( ) ;
478
+ assume ( logger . isLevelEnabled ( 'test' ) ) . true ( ) ;
479
+ assume ( logger . isLevelEnabled ( 'ok' ) ) . false ( ) ;
480
+
481
+ assume ( logger . isBadEnabled ( ) ) . true ( ) ;
482
+ assume ( logger . isTestEnabled ( ) ) . true ( ) ;
483
+ assume ( logger . isOkEnabled ( ) ) . false ( ) ;
484
+ } ) ;
485
+
486
+ it ( 'custom levels, no transports' , function ( ) {
487
+ var logger = winston . createLogger ( {
488
+ level : 'test' ,
489
+ levels : {
490
+ bad : 0 ,
491
+ test : 1 ,
492
+ ok : 2
493
+ } ,
494
+ transports : [ ]
495
+ } ) ;
496
+
497
+ assume ( logger . isLevelEnabled ) . is . a ( 'function' ) ;
498
+
499
+ assume ( logger . isBadEnabled ) . is . a ( 'function' ) ;
500
+ assume ( logger . isTestEnabled ) . is . a ( 'function' ) ;
501
+ assume ( logger . isOkEnabled ) . is . a ( 'function' ) ;
502
+
503
+ assume ( logger . isLevelEnabled ( 'bad' ) ) . true ( ) ;
504
+ assume ( logger . isLevelEnabled ( 'test' ) ) . true ( ) ;
505
+ assume ( logger . isLevelEnabled ( 'ok' ) ) . false ( ) ;
506
+
507
+ assume ( logger . isBadEnabled ( ) ) . true ( ) ;
508
+ assume ( logger . isTestEnabled ( ) ) . true ( ) ;
509
+ assume ( logger . isOkEnabled ( ) ) . false ( ) ;
510
+ } ) ;
511
+
512
+ it ( 'custom levels, transport override' , function ( ) {
513
+ var transport = new winston . transports . Console ( ) ;
514
+ transport . level = 'ok' ;
515
+
516
+ var logger = winston . createLogger ( {
517
+ level : 'bad' ,
518
+ levels : {
519
+ bad : 0 ,
520
+ test : 1 ,
521
+ ok : 2
522
+ } ,
523
+ transports : [ transport ]
524
+ } ) ;
525
+
526
+ assume ( logger . isLevelEnabled ) . is . a ( 'function' ) ;
527
+
528
+ assume ( logger . isBadEnabled ) . is . a ( 'function' ) ;
529
+ assume ( logger . isTestEnabled ) . is . a ( 'function' ) ;
530
+ assume ( logger . isOkEnabled ) . is . a ( 'function' ) ;
531
+
532
+ assume ( logger . isLevelEnabled ( 'bad' ) ) . true ( ) ;
533
+ assume ( logger . isLevelEnabled ( 'test' ) ) . true ( ) ;
534
+ assume ( logger . isLevelEnabled ( 'ok' ) ) . true ( ) ;
535
+
536
+ assume ( logger . isBadEnabled ( ) ) . true ( ) ;
537
+ assume ( logger . isTestEnabled ( ) ) . true ( ) ;
538
+ assume ( logger . isOkEnabled ( ) ) . true ( ) ;
539
+ } ) ;
540
+ } ) ;
541
+
363
542
describe ( 'Logger (stream semantics)' , function ( ) {
364
543
it ( `'finish' event awaits transports to emit 'finish'` , function ( done ) {
365
544
const transports = [
0 commit comments