env_ut.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. #include <library/cpp/testing/unittest/registar.h>
  2. #include <util/generic/string.h>
  3. #include "env.h"
  4. Y_UNIT_TEST_SUITE(EnvTest) {
  5. Y_UNIT_TEST(GetSetEnvTest) {
  6. TString key = "util_GETENV_TestVar";
  7. TString value = "Some value for env var";
  8. TString def = "Some default value for env var";
  9. // first of all, it should be clear
  10. UNIT_ASSERT_VALUES_EQUAL(GetEnv(key), TString());
  11. UNIT_ASSERT_VALUES_EQUAL(GetEnv(key, def), def);
  12. SetEnv(key, value);
  13. // set and see what value we get here
  14. UNIT_ASSERT_VALUES_EQUAL(GetEnv(key), value);
  15. UNIT_ASSERT_VALUES_EQUAL(GetEnv(key, def), value);
  16. // set empty value
  17. SetEnv(key, TString());
  18. UNIT_ASSERT_VALUES_EQUAL(GetEnv(key), TString());
  19. // check for long values, see IGNIETFERRO-214
  20. TString longKey = "util_GETENV_TestVarLong";
  21. TString longValue{1500, 't'};
  22. UNIT_ASSERT_VALUES_EQUAL(GetEnv(longKey), TString());
  23. SetEnv(longKey, longValue);
  24. UNIT_ASSERT_VALUES_EQUAL(GetEnv(longKey), longValue);
  25. SetEnv(longKey, TString());
  26. UNIT_ASSERT_VALUES_EQUAL(GetEnv(longKey), TString());
  27. }
  28. }