From 14ea3b69801213eee7aaa0a64f7d0144d23f58a1 Mon Sep 17 00:00:00 2001 From: Joel Rosdahl Date: Wed, 5 Aug 2015 17:38:40 +0200 Subject: [PATCH] test: Make subst_env_in_string not depend on existing environment --- test/test_util.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/test/test_util.c b/test/test_util.c index 395546fe9..ce9ad4486 100644 --- a/test/test_util.c +++ b/test/test_util.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010-2014 Joel Rosdahl + * Copyright (C) 2010-2015 Joel Rosdahl * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the Free @@ -93,11 +93,11 @@ TEST(format_hash_as_string) TEST(subst_env_in_string) { char *errmsg; - const char *shell = getenv("SHELL"); - errmsg = ""; - CHECK_STR_EQ_FREE2(shell, - subst_env_in_string("$SHELL", &errmsg)); + putenv("FOO=bar"); + + CHECK_STR_EQ_FREE2("bar", + subst_env_in_string("$FOO", &errmsg)); CHECK(!errmsg); errmsg = ""; @@ -106,26 +106,26 @@ TEST(subst_env_in_string) CHECK(!errmsg); errmsg = ""; - CHECK_STR_EQ_FREE12(format("%s %s:%s", shell, shell, shell), - subst_env_in_string("$SHELL $SHELL:$SHELL", &errmsg)); + CHECK_STR_EQ_FREE2("bar bar:bar", + subst_env_in_string("$FOO $FOO:$FOO", &errmsg)); CHECK(!errmsg); errmsg = ""; - CHECK_STR_EQ_FREE12(format("x%s", shell), - subst_env_in_string("x$SHELL", &errmsg)); + CHECK_STR_EQ_FREE2("xbar", + subst_env_in_string("x$FOO", &errmsg)); CHECK(!errmsg); errmsg = ""; - CHECK_STR_EQ_FREE12(format("%sx", shell), - subst_env_in_string("${SHELL}x", &errmsg)); + CHECK_STR_EQ_FREE2("barx", + subst_env_in_string("${FOO}x", &errmsg)); CHECK(!errmsg); CHECK(!subst_env_in_string("$surelydoesntexist", &errmsg)); CHECK_STR_EQ_FREE2("environment variable \"surelydoesntexist\" not set", errmsg); - CHECK(!subst_env_in_string("${SHELL", &errmsg)); - CHECK_STR_EQ_FREE2("syntax error: missing '}' after \"SHELL\"", errmsg); + CHECK(!subst_env_in_string("${FOO", &errmsg)); + CHECK_STR_EQ_FREE2("syntax error: missing '}' after \"FOO\"", errmsg); } TEST(format_human_readable_size) -- 2.47.2