40 lines
861 B
Go
40 lines
861 B
Go
package logger
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"codespace/pkg/config"
|
|
)
|
|
|
|
func TestNewJSONInfoLogger(t *testing.T) {
|
|
lg, err := New(config.LogConfig{Level: "info", Format: "json"})
|
|
if err != nil {
|
|
t.Fatalf("New returned error: %v", err)
|
|
}
|
|
if lg == nil {
|
|
t.Fatal("logger is nil")
|
|
}
|
|
}
|
|
|
|
func TestNewTextDebugLogger(t *testing.T) {
|
|
lg, err := New(config.LogConfig{Level: "debug", Format: "text"})
|
|
if err != nil {
|
|
t.Fatalf("New returned error: %v", err)
|
|
}
|
|
if lg == nil {
|
|
t.Fatal("logger is nil")
|
|
}
|
|
}
|
|
|
|
func TestNewRejectsInvalidLevel(t *testing.T) {
|
|
if _, err := New(config.LogConfig{Level: "verbose", Format: "json"}); err == nil {
|
|
t.Fatal("expected invalid level error")
|
|
}
|
|
}
|
|
|
|
func TestNewRejectsInvalidFormat(t *testing.T) {
|
|
if _, err := New(config.LogConfig{Level: "info", Format: "xml"}); err == nil {
|
|
t.Fatal("expected invalid format error")
|
|
}
|
|
}
|