1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
package logr
import (
"testing"
)
func TestLevelFromString(t *testing.T) {
scenarios := []struct {
input string
expected Level
expectedErr error
}{
{"DEBUG", LevelDebug, nil},
{"debug", LevelDebug, nil},
{"INFO", LevelInfo, nil},
{"info", LevelInfo, nil},
{"WARN", LevelWarn, nil},
{"warn", LevelWarn, nil},
{"ERROR", LevelError, nil},
{"error", LevelError, nil},
{"", LevelDebug, ErrInvalidLevelString},
{"invalid", LevelDebug, ErrInvalidLevelString},
}
for _, scenario := range scenarios {
t.Run(scenario.input, func(t *testing.T) {
actual, err := LevelFromString(scenario.input)
if actual != scenario.expected {
t.Errorf("expected %s, got %s", scenario.expected, actual)
}
if err != scenario.expectedErr {
t.Errorf("expected %v, got %v", scenario.expectedErr, err)
}
})
}
}
|