diff --git a/viper.go b/viper.go index 2603c78..066a15f 100644 --- a/viper.go +++ b/viper.go @@ -1033,9 +1033,9 @@ func (v *Viper) realKey(key string) string { func InConfig(key string) bool { return v.InConfig(key) } func (v *Viper) InConfig(key string) bool { // if the requested key is an alias, then return the proper key - key = v.realKey(key) + key = v.realKey(strings.ToLower(key)) - _, exists := v.config[key] + _, exists := v.config[strings.ToLower(key)] return exists } diff --git a/viper_test.go b/viper_test.go index cd7b65c..e6fcee9 100644 --- a/viper_test.go +++ b/viper_test.go @@ -268,6 +268,7 @@ func TestUnmarshalling(t *testing.T) { unmarshalReader(r, v.config) assert.True(t, InConfig("name")) + assert.True(t, InConfig("NAME")) assert.False(t, InConfig("state")) assert.Equal(t, "steve", Get("name")) assert.Equal(t, []interface{}{"skateboarding", "snowboarding", "go"}, Get("hobbies"))