Add a unit test for environment_variable_names_equal

I need this because I'm about to frob that function to stop using
strcspn() in order to get rid of a clang warning.
This commit is contained in:
Nick Mathewson 2012-06-26 10:50:37 -04:00
parent 201b852c27
commit 9c8ec0aa20
2 changed files with 36 additions and 0 deletions

2
changes/envvar_test Normal file
View File

@ -0,0 +1,2 @@
o New unit tests:
- Add a unit test for the environment_variable_names_equal function.

View File

@ -2869,6 +2869,39 @@ test_util_sl_new_from_text_lines(void *ptr)
}
}
static void
test_util_envnames(void *ptr)
{
(void) ptr;
tt_assert(environment_variable_names_equal("abc", "abc"));
tt_assert(environment_variable_names_equal("abc", "abc="));
tt_assert(environment_variable_names_equal("abc", "abc=def"));
tt_assert(environment_variable_names_equal("abc=def", "abc"));
tt_assert(environment_variable_names_equal("abc=def", "abc=ghi"));
tt_assert(environment_variable_names_equal("abc", "abc"));
tt_assert(environment_variable_names_equal("abc", "abc="));
tt_assert(environment_variable_names_equal("abc", "abc=def"));
tt_assert(environment_variable_names_equal("abc=def", "abc"));
tt_assert(environment_variable_names_equal("abc=def", "abc=ghi"));
tt_assert(!environment_variable_names_equal("abc", "abcd"));
tt_assert(!environment_variable_names_equal("abc=", "abcd"));
tt_assert(!environment_variable_names_equal("abc=", "abcd"));
tt_assert(!environment_variable_names_equal("abc=", "def"));
tt_assert(!environment_variable_names_equal("abc=", "def="));
tt_assert(!environment_variable_names_equal("abc=x", "def=x"));
tt_assert(!environment_variable_names_equal("", "a=def"));
/* A bit surprising. */
tt_assert(environment_variable_names_equal("", "=def"));
tt_assert(environment_variable_names_equal("=y", "=x"));
done:
;
}
/** Test process_environment_make */
static void
test_util_make_environment(void *ptr)
@ -3081,6 +3114,7 @@ struct testcase_t util_tests[] = {
UTIL_TEST(n_bits_set, 0),
UTIL_TEST(eat_whitespace, 0),
UTIL_TEST(sl_new_from_text_lines, 0),
UTIL_TEST(envnames, 0),
UTIL_TEST(make_environment, 0),
UTIL_TEST(set_env_var_in_sl, 0),
END_OF_TESTCASES