diff --git a/internal/config/config.go b/internal/config/config.go index 7a074be5e..2395211e2 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -63,7 +63,7 @@ type Settings struct { func defaultConfig(dataDir, configFile string) *Config { forcePrepend := forcePrependDefault forcePrependEnv := os.Getenv("ASDF_FORCE_PREPEND") - if forcePrependEnv == "yes" || (forcePrependEnv == "" && runtime.GOOS == "darwin") { + if strings.ToLower(forcePrependEnv) == "yes" || (forcePrependEnv == "" && runtime.GOOS == "darwin") { forcePrepend = true } return &Config{ diff --git a/internal/config/config_test.go b/internal/config/config_test.go index 56d55ae7f..cb4db5062 100644 --- a/internal/config/config_test.go +++ b/internal/config/config_test.go @@ -33,6 +33,14 @@ func TestLoadConfigEnv_WithForcePrependEnv(t *testing.T) { assert.True(t, config.ForcePrepend, "Then ForcePrepend property is true") }) + t.Run("When ASDF_FORCE_PREPEND env given YES", func(t *testing.T) { + t.Setenv("ASDF_FORCE_PREPEND", "YES") + + config, _ := loadConfigEnv() + + assert.True(t, config.ForcePrepend, "Then ForcePrepend property is true") + }) + t.Run("When ASDF_FORCE_PREPEND env given any string other than yes", func(t *testing.T) { t.Setenv("ASDF_FORCE_PREPEND", "no")