summaryrefslogtreecommitdiffstats
path: root/util/system/env_ut.cpp
diff options
context:
space:
mode:
authorDevtools Arcadia <[email protected]>2022-02-07 18:08:42 +0300
committerDevtools Arcadia <[email protected]>2022-02-07 18:08:42 +0300
commit1110808a9d39d4b808aef724c861a2e1a38d2a69 (patch)
treee26c9fed0de5d9873cce7e00bc214573dc2195b7 /util/system/env_ut.cpp
intermediate changes
ref:cde9a383711a11544ce7e107a78147fb96cc4029
Diffstat (limited to 'util/system/env_ut.cpp')
-rw-r--r--util/system/env_ut.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/util/system/env_ut.cpp b/util/system/env_ut.cpp
new file mode 100644
index 00000000000..e03cc016589
--- /dev/null
+++ b/util/system/env_ut.cpp
@@ -0,0 +1,31 @@
+#include <library/cpp/testing/unittest/registar.h>
+
+#include <util/generic/string.h>
+#include "env.h"
+
+Y_UNIT_TEST_SUITE(EnvTest) {
+ Y_UNIT_TEST(GetSetEnvTest) {
+ TString key = "util_GETENV_TestVar";
+ TString value = "Some value for env var";
+ TString def = "Some default value for env var";
+ // first of all, it should be clear
+ UNIT_ASSERT_VALUES_EQUAL(GetEnv(key), TString());
+ UNIT_ASSERT_VALUES_EQUAL(GetEnv(key, def), def);
+ SetEnv(key, value);
+ // set and see what value we get here
+ UNIT_ASSERT_VALUES_EQUAL(GetEnv(key), value);
+ UNIT_ASSERT_VALUES_EQUAL(GetEnv(key, def), value);
+ // set empty value
+ SetEnv(key, TString());
+ UNIT_ASSERT_VALUES_EQUAL(GetEnv(key), TString());
+
+ // check for long values, see IGNIETFERRO-214
+ TString longKey = "util_GETENV_TestVarLong";
+ TString longValue{1500, 't'};
+ UNIT_ASSERT_VALUES_EQUAL(GetEnv(longKey), TString());
+ SetEnv(longKey, longValue);
+ UNIT_ASSERT_VALUES_EQUAL(GetEnv(longKey), longValue);
+ SetEnv(longKey, TString());
+ UNIT_ASSERT_VALUES_EQUAL(GetEnv(longKey), TString());
+ }
+}