package logger import ( log "github.com/sirupsen/logrus" "io" "os" "testing" "git.urec56.ru/urec/chat_back_go/config" ) func Test_NewLogger(t *testing.T) { testTable := []struct { name string mode string expectedFormatter log.Formatter expectedOut io.Writer expectedLevel log.Level }{ { name: "prod", mode: "PROD", expectedFormatter: &log.JSONFormatter{}, expectedOut: os.Stdout, expectedLevel: log.WarnLevel, }, { name: "stage", mode: "STAGE", expectedFormatter: &log.TextFormatter{}, expectedOut: os.Stdout, expectedLevel: log.InfoLevel, }, { name: "dev", mode: "DEV", expectedFormatter: &log.TextFormatter{}, expectedOut: os.Stdout, expectedLevel: log.DebugLevel, }, { name: "test", mode: "TEST", expectedFormatter: &log.TextFormatter{}, expectedOut: io.Discard, expectedLevel: log.PanicLevel, }, } for _, tc := range testTable { t.Run(tc.name, func(t *testing.T) { l := NewLogger(config.Config{Mode: tc.mode}) _ = l }) } }