Add tests for env_util

This commit is contained in:
patrick96 2021-09-21 21:23:05 +02:00 committed by Patrick Ziegler
parent 0d1db206c6
commit fabce6a493
2 changed files with 28 additions and 0 deletions

View File

@ -50,6 +50,7 @@ add_unit_test(utils/actions)
add_unit_test(utils/action_router)
add_unit_test(utils/color)
add_unit_test(utils/command)
add_unit_test(utils/env)
add_unit_test(utils/math)
add_unit_test(utils/memory)
add_unit_test(utils/scope)

View File

@ -0,0 +1,27 @@
#include "utils/env.hpp"
#include "common/test.hpp"
#include "stdlib.h"
using namespace polybar;
static constexpr auto INEXISTENT_ENV = "POLYBAR_INEXISTENT";
TEST(Env, has) {
EXPECT_EQ(true, env_util::has("HOME"));
unsetenv(INEXISTENT_ENV);
EXPECT_EQ(false, env_util::has(INEXISTENT_ENV));
setenv(INEXISTENT_ENV, "123", false);
EXPECT_EQ(true, env_util::has(INEXISTENT_ENV));
unsetenv(INEXISTENT_ENV);
EXPECT_EQ(false, env_util::has(INEXISTENT_ENV));
}
TEST(Env, get) {
unsetenv(INEXISTENT_ENV);
EXPECT_EQ("fallback", env_util::get(INEXISTENT_ENV, "fallback"));
setenv(INEXISTENT_ENV, "123", false);
EXPECT_EQ("123", env_util::get(INEXISTENT_ENV, "fallback"));
unsetenv(INEXISTENT_ENV);
EXPECT_EQ("fallback", env_util::get(INEXISTENT_ENV, "fallback"));
}