aboutsummaryrefslogtreecommitdiff
path: root/test/test-env-vars.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/test-env-vars.c')
-rw-r--r--test/test-env-vars.c24
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;
}