diff options
author | Joseph Hunkeler <jhunkeler@gmail.com> | 2025-02-04 11:45:39 -0500 |
---|---|---|
committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2025-02-04 11:45:39 -0500 |
commit | 0f96da78f6f9c8166f8fd8f5184476c658c3f648 (patch) | |
tree | e7a418f7a5338d59a95dd26029df9528472b3efb /tests/test_environment.c | |
parent | f6922ea26a642f11c0e8cca656b04090e72d25f3 (diff) | |
download | stasis-0f96da78f6f9c8166f8fd8f5184476c658c3f648.tar.gz |
test_environment.c: free allocated resources
* Replace usage of 'const char *' where 'char *' was appropriate
Diffstat (limited to 'tests/test_environment.c')
-rw-r--r-- | tests/test_environment.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/tests/test_environment.c b/tests/test_environment.c index 3418800..134d061 100644 --- a/tests/test_environment.c +++ b/tests/test_environment.c @@ -31,7 +31,7 @@ void test_runtime() { STASIS_ASSERT((idx = runtime_contains(env, "CUSTOM_KEY")) >= 0, "CUSTOM_KEY should exist in object"); STASIS_ASSERT(strcmp(strlist_item(env, idx), "CUSTOM_KEY=Very custom") == 0, "Incorrect index returned by runtime_contains"); - const char *custom_value = runtime_get(env, "CUSTOM_KEY"); + char *custom_value = runtime_get(env, "CUSTOM_KEY"); STASIS_ASSERT_FATAL(custom_value != NULL, "CUSTOM_KEY should not be NULL"); STASIS_ASSERT(strcmp(custom_value, "Very custom") == 0, "CUSTOM_KEY has incorrect data"); STASIS_ASSERT(strstr_array(environ, "CUSTOM_KEY") == NULL, "CUSTOM_KEY should not exist in the global environment"); @@ -44,6 +44,7 @@ void test_runtime() { STASIS_ASSERT(setenv("CUSTOM_KEY", "modified", 1) == 0, "modifying global CUSTOM_KEY failed"); global_custom_value = getenv("CUSTOM_KEY"); STASIS_ASSERT(strcmp(global_custom_value, custom_value) != 0, "local and global CUSTOM_KEY variable are supposed to be different"); + guard_free(custom_value); runtime_replace(&env, environ); runtime_apply(env); @@ -53,13 +54,19 @@ void test_runtime() { STASIS_ASSERT_FATAL(custom_value != NULL, "CUSTOM_KEY must exist in local environment after calling runtime_replace()"); STASIS_ASSERT_FATAL(global_custom_value != NULL, "CUSTOM_KEY must exist in global environment after calling runtime_replace()"); STASIS_ASSERT(strcmp(global_custom_value, custom_value) == 0, "local and global CUSTOM_KEY variable are supposed to be identical"); + guard_free(custom_value); char output_truth[BUFSIZ] = {0}; - sprintf(output_truth, "Your PATH is '%s'.", runtime_get(env, "PATH")); - const char *output_expanded = runtime_expand_var(env, "Your PATH is '${PATH}'."); + char *your_path = runtime_get(env, "PATH"); + sprintf(output_truth, "Your PATH is '%s'.", your_path); + guard_free(your_path); + + char *output_expanded = runtime_expand_var(env, "Your PATH is '${PATH}'."); STASIS_ASSERT(output_expanded != NULL, "expansion of PATH should not fail"); STASIS_ASSERT(strcmp(output_expanded, output_truth) == 0, "the expansion, and the expected result should be identical"); + guard_free(output_expanded); + guard_runtime_free(env); // TODO: runtime_export() // requires dumping stdout to a file and comparing it with the current environment array } |