summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Nocera <hadess@hadess.net>2016-03-23 21:35:13 +0100
committerBastien Nocera <hadess@hadess.net>2016-04-04 15:06:57 +0200
commit21ad4c800c8624bdb750da5afbda6cca44e64bbe (patch)
tree738b562d4df1a2184887a57bbc6015b2af4acba9
parent283c565af6a8a68015a078776c10f7103ba2c485 (diff)
downloadglib-21ad4c800c8624bdb750da5afbda6cca44e64bbe.tar.gz
gstrfuncs: Add test for g_strjoinv() behaviour
https://bugzilla.gnome.org/show_bug.cgi?id=764092
-rw-r--r--glib/tests/strfuncs.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/glib/tests/strfuncs.c b/glib/tests/strfuncs.c
index cbf5be7bb..0d0f351db 100644
--- a/glib/tests/strfuncs.c
+++ b/glib/tests/strfuncs.c
@@ -1114,6 +1114,8 @@ test_bounds (void)
char *tmp, *tmp2;
char **array;
char *string;
+ const char * const strjoinv_0[] = { NULL };
+ const char * const strjoinv_1[] = { "foo", NULL };
/* if we allocate the file between two others and then free those
* other two, then hopefully we end up with unmapped memory on either
@@ -1265,6 +1267,14 @@ test_bounds (void)
g_assert_cmpmem (tmp, strlen (tmp), string, 4095);
g_free (tmp);
+ tmp = g_strjoinv ("/", (char **) strjoinv_0);
+ g_assert_cmpstr (tmp, ==, "");
+ g_free (tmp);
+
+ tmp = g_strjoinv ("/", (char **) strjoinv_1);
+ g_assert_cmpstr (tmp, ==, "foo");
+ g_free (tmp);
+
tmp = g_strconcat (string, string, string, NULL);
g_assert_cmpint (strlen (tmp), ==, 4095 * 3);
g_free (tmp);