@@ -363,3 +363,357 @@ func TestConsoleLoggerColor(t *testing.T) {
363363 // Equal(t, buff.String(), "[34m INFO[0m["+year+"] info [34mkey[0m=value\n")
364364 // buff.Reset()
365365}
366+
367+ func TestConsoleLoggerCaller (t * testing.T ) {
368+
369+ buff := new (bytes.Buffer )
370+
371+ cLog := New ()
372+ cLog .SetWriter (buff )
373+ cLog .DisplayColor (false )
374+ cLog .SetChannelBuffer (3 )
375+ cLog .SetTimestampFormat (time .RFC3339 )
376+ cLog .UseMiniTimestamp (true )
377+ cLog .SetANSIReset (log .Reset )
378+
379+ log .SetCallerInfo (true )
380+ log .RegisterHandler (cLog , log .AllLevels ... )
381+
382+ log .Debug ("debug" )
383+ Equal (t , buff .String (), "0000 DEBUG console_test.go:382 debug\n " )
384+ buff .Reset ()
385+
386+ log .Debugf ("%s" , "debugf" )
387+ Equal (t , buff .String (), "0000 DEBUG console_test.go:386 debugf\n " )
388+ buff .Reset ()
389+
390+ log .Info ("info" )
391+ Equal (t , buff .String (), "0000 INFO console_test.go:390 info\n " )
392+ buff .Reset ()
393+
394+ log .Infof ("%s" , "infof" )
395+ Equal (t , buff .String (), "0000 INFO console_test.go:394 infof\n " )
396+ buff .Reset ()
397+
398+ log .Notice ("notice" )
399+ Equal (t , buff .String (), "0000 NOTICE console_test.go:398 notice\n " )
400+ buff .Reset ()
401+
402+ log .Noticef ("%s" , "noticef" )
403+ Equal (t , buff .String (), "0000 NOTICE console_test.go:402 noticef\n " )
404+ buff .Reset ()
405+
406+ log .Warn ("warn" )
407+ Equal (t , buff .String (), "0000 WARN console_test.go:406 warn\n " )
408+ buff .Reset ()
409+
410+ log .Warnf ("%s" , "warnf" )
411+ Equal (t , buff .String (), "0000 WARN console_test.go:410 warnf\n " )
412+ buff .Reset ()
413+
414+ log .Error ("error" )
415+ Equal (t , buff .String (), "0000 ERROR console_test.go:414 error\n " )
416+ buff .Reset ()
417+
418+ log .Errorf ("%s" , "errorf" )
419+ Equal (t , buff .String (), "0000 ERROR console_test.go:418 errorf\n " )
420+ buff .Reset ()
421+
422+ log .Alert ("alert" )
423+ Equal (t , buff .String (), "0000 ALERT console_test.go:422 alert\n " )
424+ buff .Reset ()
425+
426+ log .Alertf ("%s" , "alertf" )
427+ Equal (t , buff .String (), "0000 ALERT console_test.go:426 alertf\n " )
428+ buff .Reset ()
429+
430+ log .Print ("print" )
431+ Equal (t , buff .String (), "0000 INFO console_test.go:430 print\n " )
432+ buff .Reset ()
433+
434+ log .Printf ("%s" , "printf" )
435+ Equal (t , buff .String (), "0000 INFO console_test.go:434 printf\n " )
436+ buff .Reset ()
437+
438+ log .Println ("println" )
439+ Equal (t , buff .String (), "0000 INFO console_test.go:438 println\n " )
440+ buff .Reset ()
441+
442+ PanicMatches (t , func () { log .Panic ("panic" ) }, "panic" )
443+ Equal (t , buff .String (), "0000 PANIC console_test.go:442 panic\n " )
444+ buff .Reset ()
445+
446+ PanicMatches (t , func () { log .Panicf ("%s" , "panicf" ) }, "panicf" )
447+ Equal (t , buff .String (), "0000 PANIC console_test.go:446 panicf\n " )
448+ buff .Reset ()
449+
450+ PanicMatches (t , func () { log .Panicln ("panicln" ) }, "panicln" )
451+ Equal (t , buff .String (), "0000 PANIC console_test.go:450 panicln\n " )
452+ buff .Reset ()
453+
454+ // WithFields
455+ log .WithFields (log .F ("key" , "value" )).Debug ("debug" )
456+ Equal (t , buff .String (), "0000 DEBUG console_test.go:455 debug key=value\n " )
457+ buff .Reset ()
458+
459+ log .WithFields (log .F ("key" , "value" )).Debugf ("%s" , "debugf" )
460+ Equal (t , buff .String (), "0000 DEBUG console_test.go:459 debugf key=value\n " )
461+ buff .Reset ()
462+
463+ log .WithFields (log .F ("key" , "value" )).Info ("info" )
464+ Equal (t , buff .String (), "0000 INFO console_test.go:463 info key=value\n " )
465+ buff .Reset ()
466+
467+ log .WithFields (log .F ("key" , "value" )).Infof ("%s" , "infof" )
468+ Equal (t , buff .String (), "0000 INFO console_test.go:467 infof key=value\n " )
469+ buff .Reset ()
470+
471+ log .WithFields (log .F ("key" , "value" )).Notice ("notice" )
472+ Equal (t , buff .String (), "0000 NOTICE console_test.go:471 notice key=value\n " )
473+ buff .Reset ()
474+
475+ log .WithFields (log .F ("key" , "value" )).Noticef ("%s" , "noticef" )
476+ Equal (t , buff .String (), "0000 NOTICE console_test.go:475 noticef key=value\n " )
477+ buff .Reset ()
478+
479+ log .WithFields (log .F ("key" , "value" )).Warn ("warn" )
480+ Equal (t , buff .String (), "0000 WARN console_test.go:479 warn key=value\n " )
481+ buff .Reset ()
482+
483+ log .WithFields (log .F ("key" , "value" )).Warnf ("%s" , "warnf" )
484+ Equal (t , buff .String (), "0000 WARN console_test.go:483 warnf key=value\n " )
485+ buff .Reset ()
486+
487+ log .WithFields (log .F ("key" , "value" )).Error ("error" )
488+ Equal (t , buff .String (), "0000 ERROR console_test.go:487 error key=value\n " )
489+ buff .Reset ()
490+
491+ log .WithFields (log .F ("key" , "value" )).Errorf ("%s" , "errorf" )
492+ Equal (t , buff .String (), "0000 ERROR console_test.go:491 errorf key=value\n " )
493+ buff .Reset ()
494+
495+ log .WithFields (log .F ("key" , "value" )).Alert ("alert" )
496+ Equal (t , buff .String (), "0000 ALERT console_test.go:495 alert key=value\n " )
497+ buff .Reset ()
498+
499+ log .WithFields (log .F ("key" , "value" )).Alertf ("%s" , "alertf" )
500+ Equal (t , buff .String (), "0000 ALERT console_test.go:499 alertf key=value\n " )
501+ buff .Reset ()
502+
503+ PanicMatches (t , func () { log .WithFields (log .F ("key" , "value" )).Panicf ("%s" , "panicf" ) }, "panicf key=value" )
504+ Equal (t , buff .String (), "0000 PANIC console_test.go:503 panicf key=value\n " )
505+ buff .Reset ()
506+
507+ PanicMatches (t , func () { log .WithFields (log .F ("key" , "value" )).Panic ("panic" ) }, "panic key=value" )
508+ Equal (t , buff .String (), "0000 PANIC console_test.go:507 panic key=value\n " )
509+ buff .Reset ()
510+
511+ func () {
512+ defer log .Trace ("trace" ).End ()
513+ }()
514+
515+ // TODO: finish up regex
516+ MatchRegex (t , buff .String (), "^0000\\ s\\ sTRACE\\ sconsole_test.go:513\\ strace\\ .*" )
517+ buff .Reset ()
518+
519+ func () {
520+ defer log .Tracef ("tracef" ).End ()
521+ }()
522+
523+ // TODO: finish up regex
524+ MatchRegex (t , buff .String (), "^0000\\ s\\ sTRACE\\ sconsole_test.go:521\\ stracef\\ .*" )
525+ buff .Reset ()
526+
527+ func () {
528+ defer log .WithFields (log .F ("key" , "value" )).Trace ("trace" ).End ()
529+ }()
530+
531+ // TODO: finish up regex
532+ MatchRegex (t , buff .String (), "^0000\\ s\\ sTRACE\\ sconsole_test.go:529\\ strace\\ .*" )
533+ buff .Reset ()
534+
535+ func () {
536+ defer log .WithFields (log .F ("key" , "value" )).Tracef ("tracef" ).End ()
537+ }()
538+
539+ // TODO: finish up regex
540+ MatchRegex (t , buff .String (), "^0000\\ s\\ sTRACE\\ sconsole_test.go:537\\ stracef\\ .*" )
541+ buff .Reset ()
542+
543+ // year := time.Now().Format("2006")
544+ // cLog.UseMiniTimestamp(false)
545+ // cLog.SetTimestampFormat("2006")
546+
547+ // log.Info("info")
548+ // Equal(t, buff.String(), " INFO["+year+"] info\n")
549+ // buff.Reset()
550+ }
551+
552+ func TestConsoleLoggerColorCaller (t * testing.T ) {
553+
554+ buff := new (bytes.Buffer )
555+
556+ cLog := New ()
557+ cLog .SetWriter (buff )
558+ cLog .DisplayColor (true )
559+ cLog .SetChannelBuffer (3 )
560+ cLog .SetTimestampFormat (time .RFC3339 )
561+ cLog .UseMiniTimestamp (true )
562+
563+ log .SetCallerInfo (true )
564+ log .RegisterHandler (cLog , log .AllLevels ... )
565+
566+ log .Debug ("debug" )
567+ Equal (t , buff .String (), "0000 [32m DEBUG[0m console_test.go:566 debug\n " )
568+ buff .Reset ()
569+
570+ log .Debugf ("%s" , "debugf" )
571+ Equal (t , buff .String (), "0000 [32m DEBUG[0m console_test.go:570 debugf\n " )
572+ buff .Reset ()
573+
574+ log .Info ("info" )
575+ Equal (t , buff .String (), "0000 [34m INFO[0m console_test.go:574 info\n " )
576+ buff .Reset ()
577+
578+ log .Infof ("%s" , "infof" )
579+ Equal (t , buff .String (), "0000 [34m INFO[0m console_test.go:578 infof\n " )
580+ buff .Reset ()
581+
582+ log .Notice ("notice" )
583+ Equal (t , buff .String (), "0000 [36;1mNOTICE[0m console_test.go:582 notice\n " )
584+ buff .Reset ()
585+
586+ log .Notice ("%s" , "noticef" )
587+ Equal (t , buff .String (), "0000 [36;1mNOTICE[0m console_test.go:586 %snoticef\n " )
588+ buff .Reset ()
589+
590+ log .Warn ("warn" )
591+ Equal (t , buff .String (), "0000 [33;1m WARN[0m console_test.go:590 warn\n " )
592+ buff .Reset ()
593+
594+ log .Warnf ("%s" , "warnf" )
595+ Equal (t , buff .String (), "0000 [33;1m WARN[0m console_test.go:594 warnf\n " )
596+ buff .Reset ()
597+
598+ log .Error ("error" )
599+ Equal (t , buff .String (), "0000 [31;1m ERROR[0m console_test.go:598 error\n " )
600+ buff .Reset ()
601+
602+ log .Errorf ("%s" , "errorf" )
603+ Equal (t , buff .String (), "0000 [31;1m ERROR[0m console_test.go:602 errorf\n " )
604+ buff .Reset ()
605+
606+ log .Alert ("alert" )
607+ Equal (t , buff .String (), "0000 [31m[4m ALERT[0m console_test.go:606 alert\n " )
608+ buff .Reset ()
609+
610+ log .Alertf ("%s" , "alertf" )
611+ Equal (t , buff .String (), "0000 [31m[4m ALERT[0m console_test.go:610 alertf\n " )
612+ buff .Reset ()
613+
614+ log .Print ("print" )
615+ Equal (t , buff .String (), "0000 [34m INFO[0m console_test.go:614 print\n " )
616+ buff .Reset ()
617+
618+ log .Printf ("%s" , "printf" )
619+ Equal (t , buff .String (), "0000 [34m INFO[0m console_test.go:618 printf\n " )
620+ buff .Reset ()
621+
622+ log .Println ("println" )
623+ Equal (t , buff .String (), "0000 [34m INFO[0m console_test.go:622 println\n " )
624+ buff .Reset ()
625+
626+ PanicMatches (t , func () { log .Panic ("panic" ) }, "panic" )
627+ Equal (t , buff .String (), "0000 [31m PANIC[0m console_test.go:626 panic\n " )
628+ buff .Reset ()
629+
630+ PanicMatches (t , func () { log .Panicf ("%s" , "panicf" ) }, "panicf" )
631+ Equal (t , buff .String (), "0000 [31m PANIC[0m console_test.go:630 panicf\n " )
632+ buff .Reset ()
633+
634+ PanicMatches (t , func () { log .Panicln ("panicln" ) }, "panicln" )
635+ Equal (t , buff .String (), "0000 [31m PANIC[0m console_test.go:634 panicln\n " )
636+ buff .Reset ()
637+
638+ // WithFields
639+ log .WithFields (log .F ("key" , "value" )).Debug ("debug" )
640+ Equal (t , buff .String (), "0000 [32m DEBUG[0m console_test.go:639 debug [32mkey[0m=value\n " )
641+ buff .Reset ()
642+
643+ log .WithFields (log .F ("key" , "value" )).Debugf ("%s" , "debugf" )
644+ Equal (t , buff .String (), "0000 [32m DEBUG[0m console_test.go:643 debugf [32mkey[0m=value\n " )
645+ buff .Reset ()
646+
647+ log .WithFields (log .F ("key" , "value" )).Info ("info" )
648+ Equal (t , buff .String (), "0000 [34m INFO[0m console_test.go:647 info [34mkey[0m=value\n " )
649+ buff .Reset ()
650+
651+ log .WithFields (log .F ("key" , "value" )).Infof ("%s" , "infof" )
652+ Equal (t , buff .String (), "0000 [34m INFO[0m console_test.go:651 infof [34mkey[0m=value\n " )
653+ buff .Reset ()
654+
655+ log .WithFields (log .F ("key" , "value" )).Notice ("notice" )
656+ Equal (t , buff .String (), "0000 [36;1mNOTICE[0m console_test.go:655 notice [36;1mkey[0m=value\n " )
657+ buff .Reset ()
658+
659+ log .WithFields (log .F ("key" , "value" )).Noticef ("%s" , "noticef" )
660+ Equal (t , buff .String (), "0000 [36;1mNOTICE[0m console_test.go:659 noticef [36;1mkey[0m=value\n " )
661+ buff .Reset ()
662+
663+ log .WithFields (log .F ("key" , "value" )).Warn ("warn" )
664+ Equal (t , buff .String (), "0000 [33;1m WARN[0m console_test.go:663 warn [33;1mkey[0m=value\n " )
665+ buff .Reset ()
666+
667+ log .WithFields (log .F ("key" , "value" )).Warnf ("%s" , "warnf" )
668+ Equal (t , buff .String (), "0000 [33;1m WARN[0m console_test.go:667 warnf [33;1mkey[0m=value\n " )
669+ buff .Reset ()
670+
671+ log .WithFields (log .F ("key" , "value" )).Error ("error" )
672+ Equal (t , buff .String (), "0000 [31;1m ERROR[0m console_test.go:671 error [31;1mkey[0m=value\n " )
673+ buff .Reset ()
674+
675+ log .WithFields (log .F ("key" , "value" )).Errorf ("%s" , "errorf" )
676+ Equal (t , buff .String (), "0000 [31;1m ERROR[0m console_test.go:675 errorf [31;1mkey[0m=value\n " )
677+ buff .Reset ()
678+
679+ log .WithFields (log .F ("key" , "value" )).Alert ("alert" )
680+ Equal (t , buff .String (), "0000 [31m[4m ALERT[0m console_test.go:679 alert [31m[4mkey[0m=value\n " )
681+ buff .Reset ()
682+
683+ log .WithFields (log .F ("key" , "value" )).Alertf ("%s" , "alertf" )
684+ Equal (t , buff .String (), "0000 [31m[4m ALERT[0m console_test.go:683 alertf [31m[4mkey[0m=value\n " )
685+ buff .Reset ()
686+
687+ PanicMatches (t , func () { log .WithFields (log .F ("key" , "value" )).Panicf ("%s" , "panicf" ) }, "panicf key=value" )
688+ Equal (t , buff .String (), "0000 [31m PANIC[0m console_test.go:687 panicf [31mkey[0m=value\n " )
689+ buff .Reset ()
690+
691+ PanicMatches (t , func () { log .WithFields (log .F ("key" , "value" )).Panic ("panic" ) }, "panic key=value" )
692+ Equal (t , buff .String (), "0000 [31m PANIC[0m console_test.go:691 panic [31mkey[0m=value\n " )
693+ buff .Reset ()
694+
695+ cLog .SetLevelColor (log .DebugLevel , log .LightGreen )
696+
697+ log .Debug ("debug" )
698+ Equal (t , buff .String (), "0000 [32;1m DEBUG[0m console_test.go:697 debug\n " )
699+ buff .Reset ()
700+ }
701+
702+ func TestConsoleLoggerColorCallerTimeFormat (t * testing.T ) {
703+
704+ year := time .Now ().Format ("2006" )
705+ buff := new (bytes.Buffer )
706+
707+ cLog := New ()
708+ cLog .SetWriter (buff )
709+ cLog .DisplayColor (true )
710+ cLog .SetChannelBuffer (3 )
711+ cLog .SetTimestampFormat ("2006" )
712+
713+ log .SetCallerInfo (true )
714+ log .RegisterHandler (cLog , log .AllLevels ... )
715+
716+ log .Debug ("debug" )
717+ Equal (t , buff .String (), year + " [32m DEBUG[0m console_test.go:716 debug\n " )
718+ buff .Reset ()
719+ }
0 commit comments