# HG changeset patch # User Matti Hamalainen # Date 1456224945 -7200 # Node ID 6e42d50c08c4b1064621c1a9c391d642a244acde # Parent b2c4b0b4d44f22984f0d934597dd76565603509e Add tests for 64bit int prints. diff -r b2c4b0b4d44f -r 6e42d50c08c4 tests.c --- a/tests.c Tue Feb 23 12:55:09 2016 +0200 +++ b/tests.c Tue Feb 23 12:55:45 2016 +0200 @@ -318,6 +318,25 @@ } } + if (test_set_start("printf() integer 64bit")) + { + int64_t i_vals[] = { 0, -0, -1, 2, -2, 612342, -612342, 0x3342344341fff, 0x1f8000000, }; + char *i_fmts[] = { "%", "%05", "%5", "%-5", "%.5", "%5.5", "%05.5", "% ", "% 3", "% 3.2", "%+3", }; + char *i_types[] = { "d", "x", "X", "o", }; + + for (i1 = 0; i1 < NCOUNT(i_vals); i1++) + { + snprintf(buf, sizeof(buf), "%lld", i_vals[i1]); + + for (i3 = 0; i3 < sizeof(i_types) / sizeof(i_types[0]); i3++) + for (i2 = 0; i2 < sizeof(i_fmts) / sizeof(i_fmts[0]); i2++) + { + snprintf(buf2, sizeof(buf2), "%sll%s", i_fmts[i2], i_types[i3]); + test_snprintf(buf, buf2, i_vals[i1]); + } + } + } + if (test_set_start("printf() float")) { double f_vals[] = { 2.02, 612342.234, -2.07, -612342.12, 437692.9876543219, 0x1fff, 0x8000000, };