test-xvasprintf: Add %s%s related checks.
authorSimon Josefsson <simon@josefsson.org>
Fri, 13 Nov 2009 09:53:06 +0000 (10:53 +0100)
committerSimon Josefsson <simon@josefsson.org>
Fri, 13 Nov 2009 09:53:06 +0000 (10:53 +0100)
ChangeLog
tests/test-xvasprintf.c

index 405bfdaa53a9bf29fb4464896c4fc210ca47d49e..34915a04788e11bf2f146e46b3275299120def6e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-13  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-xvasprintf.c: Add %s%s related checks.
+
 2009-11-12  Eric Blake  <ebb9@byu.net>
 
        version-etc: match standards.texi style
index 37603142f93e2b742ee1e46e5b99daabb3e84c1c..5296b67a34c07c99b5798d94e9492e8cf477b54a 100644 (file)
@@ -55,28 +55,62 @@ static void
 test_xvasprintf (void)
 {
   int repeat;
+  char *result;
 
   for (repeat = 0; repeat <= 8; repeat++)
     {
-      char *result = my_xasprintf ("%d", 12345);
+      result = my_xasprintf ("%d", 12345);
       ASSERT (result != NULL);
       ASSERT (strcmp (result, "12345") == 0);
       free (result);
     }
+
+  result = my_xasprintf ("");
+  ASSERT (result != NULL);
+  ASSERT (strcmp (result, "") == 0);
+
+  result = my_xasprintf ("%s", "foo");
+  ASSERT (result != NULL);
+  ASSERT (strcmp (result, "foo") == 0);
+
+  result = my_xasprintf ("%s%s", "foo", "bar");
+  ASSERT (result != NULL);
+  ASSERT (strcmp (result, "foobar") == 0);
+
+  result = my_xasprintf ("%s%sbaz", "foo", "bar");
+  ASSERT (result != NULL);
+  ASSERT (strcmp (result, "foobarbaz") == 0);
 }
 
 static void
 test_xasprintf ()
 {
   int repeat;
+  char *result;
 
   for (repeat = 0; repeat <= 8; repeat++)
     {
-      char *result = xasprintf ("%d", 12345);
+      result = xasprintf ("%d", 12345);
       ASSERT (result != NULL);
       ASSERT (strcmp (result, "12345") == 0);
       free (result);
     }
+
+  result = xasprintf ("");
+  ASSERT (result != NULL);
+  ASSERT (strcmp (result, "") == 0);
+
+  result = xasprintf ("%s", "foo");
+  ASSERT (result != NULL);
+  ASSERT (strcmp (result, "foo") == 0);
+
+  result = xasprintf ("%s%s", "foo", "bar");
+  ASSERT (result != NULL);
+  ASSERT (strcmp (result, "foobar") == 0);
+
+  result = my_xasprintf ("%s%sbaz", "foo", "bar");
+  ASSERT (result != NULL);
+  ASSERT (strcmp (result, "foobarbaz") == 0);
 }
 
 int