diff --git a/test_printf_bonus.c b/test_printf_bonus.c index 6b92f4b..efd5c6d 100644 --- a/test_printf_bonus.c +++ b/test_printf_bonus.c @@ -6,7 +6,7 @@ /* By: lalgarra +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/10/15 18:54:32 by lalgarra #+# #+# */ -/* Updated: 2025/10/20 21:42:03 by lalgarra ### ########.fr */ +/* Updated: 2025/10/21 18:06:39 by lalgarra ### ########.fr */ /* */ /* ************************************************************************** */ @@ -317,6 +317,91 @@ static void test16() ft_printf("ret=%i\n", ret); } +static void test17() +{ + char prefix[178]; + char sfmt[178]; + int ret; + + strcpy(prefix, "test17: "); + strcpy(sfmt, "%%.5d:%.5d,%.5d--eof; "); + printf("%s printf(): ", prefix); + ret = printf(sfmt, -17, -99); + printf("ret=%i\n", ret); + fflush(stdout); + ft_printf("%sft_printf(): ", prefix); + ret = ft_printf(sfmt, -17, -99); + ft_printf("ret=%i\n", ret); +} + +static void test18() +{ + char prefix[188]; + char sfmt[188]; + int ret; + + strcpy(prefix, "test18: "); + strcpy(sfmt, "%%.10d,%%.12d,%%.13d,%%14d:%.10d,%.12d,%.13d,%14d--eof; "); + printf("%s printf(): ", prefix); + ret = printf(sfmt, LONG_MAX, UINT_MAX, ULONG_MAX, 9223372036854775807LL); + printf("ret=%i\n", ret); + fflush(stdout); + ft_printf("%sft_printf(): ", prefix); + ret = ft_printf(sfmt, LONG_MAX, UINT_MAX, ULONG_MAX, 9223372036854775807LL); + ft_printf("ret=%i\n", ret); +} + +static void test19() +{ + char prefix[198]; + char sfmt[198]; + int ret; + + strcpy(prefix, "test19: "); + strcpy(sfmt, "%%.2d,%%.3d,%%.3d,%%.4d:%.2d,%.3d,%.3d,%.4d--eof; "); + printf("%s printf(): ", prefix); + ret = printf(sfmt, -1, -11, -99, -101); + printf("ret=%i\n", ret); + fflush(stdout); + ft_printf("%sft_printf(): ", prefix); + ret = ft_printf(sfmt, -1, -11, -99, -101); + ft_printf("ret=%i\n", ret); +} + +static void test20() +{ + char prefix[208]; + char sfmt[208]; + int ret; + + strcpy(prefix, "test20: "); + strcpy(sfmt, "%% d,%% d,%%+d,%%+d:% d,% d,%+d,%+d--eof; "); + printf("%s printf(): ", prefix); + ret = printf(sfmt, 0, INT_MAX, 99, LONG_MIN); + printf("ret=%i\n", ret); + fflush(stdout); + ft_printf("%sft_printf(): ", prefix); + ret = ft_printf(sfmt, 0, INT_MAX, 99, LONG_MIN); + ft_printf("ret=%i\n", ret); +} + +static void test21() +{ + char prefix[218]; + char sfmt[218]; + int ret; + + strcpy(prefix, "test21: "); + strcpy(sfmt, "%%.s:%.s--eof; "); + printf("%s printf(): ", prefix); + ret = printf(sfmt, "-"); + printf("ret=%i\n", ret); + fflush(stdout); + ft_printf("%sft_printf(): ", prefix); + ret = ft_printf(sfmt, "-"); + ft_printf("ret=%i\n", ret); +} + static void test50() { char prefix[128]; @@ -369,6 +454,11 @@ int main(void) test14(); test15(); test16(); + test17(); + test18(); + test19(); + test20(); + test21(); test50(); test99(); return (0);