From: Mark Andrews Date: Wed, 16 May 2018 04:21:38 +0000 (+1000) Subject: add some %f format tests X-Git-Tag: v9.10.8rc1~23^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=13494a5a204f2a9218ebf39ebe10cadaf90ecfd7;p=thirdparty%2Fbind9.git add some %f format tests (cherry picked from commit f5233ba5dedcfa49f7eebefb94940c0e35139b28) --- diff --git a/lib/isc/tests/print_test.c b/lib/isc/tests/print_test.c index 47661773351..b6193be3d5f 100644 --- a/lib/isc/tests/print_test.c +++ b/lib/isc/tests/print_test.c @@ -55,6 +55,7 @@ ATF_TC_BODY(snprintf, tc) { isc_uint64_t ll = 8589934592ULL; isc_uint64_t nn = 20000000000000ULL; isc_uint64_t zz = 10000000000000000000ULL; + float pi = 3.141; int n; size_t size; @@ -123,6 +124,25 @@ ATF_TC_BODY(snprintf, tc) { n = isc_print_snprintf(buf, sizeof(buf), "0x%"ISC_PRINT_QUADFORMAT"x", zz); ATF_CHECK_EQ(n, 18); ATF_CHECK_STREQ(buf, "0xf5f5f5f5f5f5f5f5"); + + n = isc_print_snprintf(buf, sizeof(buf), "%.2f", pi); + ATF_CHECK_EQ(n, 4); + ATF_CHECK_STREQ(buf, "3.14"); + + /* Similar to the above, but additional characters follows */ + n = isc_print_snprintf(buf, sizeof(buf), "%.2f1592", pi); + ATF_CHECK_EQ(n, 8); + ATF_CHECK_STREQ(buf, "3.141592"); + + /* Similar to the above, but with leading spaces */ + n = isc_print_snprintf(buf, sizeof(buf), "% 8.2f1592", pi); + ATF_CHECK_EQ(n, 12); + ATF_CHECK_STREQ(buf, " 3.141592"); + + /* Similar to the above, but with trail spaces after the 4 */ + n = isc_print_snprintf(buf, sizeof(buf), "%-8.2f1592", pi); + ATF_CHECK_EQ(n, 12); + ATF_CHECK_STREQ(buf, "3.14 1592"); } ATF_TC(fprintf);