package logging import ( "testing" "github.com/rs/zerolog" ) func TestParseLevel(t *testing.T) { tests := []struct { name string input string expected zerolog.Level }{ { name: "debug level", input: "debug", expected: zerolog.DebugLevel, }, { name: "info level", input: "info", expected: zerolog.InfoLevel, }, { name: "warn level", input: "warn", expected: zerolog.WarnLevel, }, { name: "error level", input: "error", expected: zerolog.ErrorLevel, }, { name: "unknown level defaults to info", input: "unknown", expected: zerolog.InfoLevel, }, { name: "empty string defaults to info", input: "", expected: zerolog.InfoLevel, }, { name: "uppercase DEBUG is case sensitive", input: "DEBUG", expected: zerolog.InfoLevel, }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { result := parseLevel(tt.input) if result != tt.expected { t.Errorf("parseLevel(%q) = %v, want %v", tt.input, result, tt.expected) } }) } }