diff options
Diffstat (limited to 'test/test-env-vars.c')
-rw-r--r-- | test/test-env-vars.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/test/test-env-vars.c b/test/test-env-vars.c index f61c1c6c..ecaba337 100644 --- a/test/test-env-vars.c +++ b/test/test-env-vars.c @@ -142,5 +142,29 @@ TEST_IMPL(env_vars) { r = uv_os_unsetenv(name2); ASSERT(r == 0); + for (i = 1; i <= 4; i++) { + size_t n; + char* p; + + n = i * 32768; + size = n + 1; + + p = malloc(size); + ASSERT_NOT_NULL(p); + + memset(p, 'x', n); + p[n] = '\0'; + + ASSERT_EQ(0, uv_os_setenv(name, p)); + ASSERT_EQ(0, uv_os_getenv(name, p, &size)); + ASSERT_EQ(n, size); + + for (n = 0; n < size; n++) + ASSERT_EQ('x', p[n]); + + ASSERT_EQ(0, uv_os_unsetenv(name)); + free(p); + } + return 0; } |