diff options
Diffstat (limited to 'libraries/base/tests/T12494.hs')
-rw-r--r-- | libraries/base/tests/T12494.hs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/libraries/base/tests/T12494.hs b/libraries/base/tests/T12494.hs new file mode 100644 index 0000000000..544f5ed908 --- /dev/null +++ b/libraries/base/tests/T12494.hs @@ -0,0 +1,36 @@ +import System.Environment.Blank + +main = do + let envVar = "AN_ENVIRONMENT_VARIABLE" + + valueBeforeSettingVariable <- getEnv envVar + print valueBeforeSettingVariable -- Nothing + + valueWithDefaultBeforeSetting <- getEnvDefault envVar "DEFAULT" + print valueWithDefaultBeforeSetting -- "DEFAULT" + + setEnv envVar "" False + + valueAfterSettingVariable <- getEnv envVar + print valueAfterSettingVariable -- Just "" + + valueWithDefaultAfterSetting <- getEnvDefault envVar "DEFAULT" + print valueWithDefaultAfterSetting -- "" + + valueFromGetEnvironment <- lookup envVar <$> getEnvironment + print valueFromGetEnvironment -- Just "" + + setEnv envVar "NO_OVERRIDE" False + + valueAfterSettingWithExistingValueAndOverrideFalse <- getEnv envVar + print valueAfterSettingWithExistingValueAndOverrideFalse -- Just "" + + setEnv envVar "OVERRIDE" True + + valueAfterSettingWithExistingValueAndOverrideTrue <- getEnv envVar + print valueAfterSettingWithExistingValueAndOverrideTrue -- Just "OVERRIDE" + + unsetEnv envVar + + valueAfterUnsettingVariable <- getEnv envVar + print valueAfterUnsettingVariable -- Nothing |