diff options
author | Joshua Haberman <joshua@reverberate.org> | 2010-07-10 19:37:47 -0700 |
---|---|---|
committer | Joshua Haberman <joshua@reverberate.org> | 2010-07-10 19:37:47 -0700 |
commit | ae0beee2854b977f472d48cd149b880b074b59c5 (patch) | |
tree | 9bbe3aedd782059a7c4ebdeb4957d27dbbbbd7ef /tests | |
parent | db6c7387bc1df49deac41155a173e33017a75ed8 (diff) |
Fixed upb_string error with strange vsnprintf() behavior.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_string.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/test_string.c b/tests/test_string.c index 5869b70..46f35b9 100644 --- a/tests/test_string.c +++ b/tests/test_string.c @@ -32,6 +32,7 @@ int main() { // Make string alias part of another string. str2 = upb_strdupc("WXYZ"); + str = upb_string_tryrecycle(str); upb_string_substr(str, str2, 1, 2); assert(upb_string_len(str) == 2); assert(upb_string_len(str2) == 4); @@ -63,9 +64,17 @@ int main() { // Test printf. str = upb_string_tryrecycle(str); upb_string_printf(str, "Number: %d, String: %s", 5, "YO!"); + assert(upb_streqlc(str, "Number: 5, String: YO!")); + + // Test asprintf + upb_string *str3 = upb_string_asprintf("Yo %s: " UPB_STRFMT "\n", + "Josh", UPB_STRARG(str)); + const char expected[] = "Yo Josh: Number: 5, String: YO!\n"; + assert(upb_streqlc(str3, expected)); upb_string_unref(str); upb_string_unref(str2); + upb_string_unref(str3); // Unref of NULL is harmless. upb_string_unref(NULL); |