[PATCH 1/1] test: test field truncation in snprint()

The output size for snprint() should not only be respected for whole fields but also with fields. Add more tests.
Signed-off-by: Heinrich Schuchardt heinrich.schuchardt@canonical.com --- test/print_ut.c | 12 ++++++++++++ 1 file changed, 12 insertions(+)
diff --git a/test/print_ut.c b/test/print_ut.c index 194387f169..8b3e0ea418 100644 --- a/test/print_ut.c +++ b/test/print_ut.c @@ -370,6 +370,18 @@ static int snprint(struct unit_test_state *uts) char buf[10] = "xxxxxxxxx"; int ret;
+ ret = snprintf(buf, 5, "%d", 12345678); + ut_asserteq_str("1234", buf); + ut_asserteq(8, ret); + ret = snprintf(buf, 5, "0x%x", 0x1234); + ut_asserteq_str("0x12", buf); + ut_asserteq(6, ret); + ret = snprintf(buf, 5, "0x%08x", 0x1234); + ut_asserteq_str("0x00", buf); + ut_asserteq(10, ret); + ret = snprintf(buf, 3, "%s", "abc"); + ut_asserteq_str("ab", buf); + ut_asserteq(3, ret); ret = snprintf(buf, 4, "%s:%s", "abc", "def"); ut_asserteq(0, buf[3]); ut_asserteq(7, ret);

On Sat, 29 Jan 2022 at 08:33, Heinrich Schuchardt heinrich.schuchardt@canonical.com wrote:
The output size for snprint() should not only be respected for whole fields but also with fields. Add more tests.
Signed-off-by: Heinrich Schuchardt heinrich.schuchardt@canonical.com
test/print_ut.c | 12 ++++++++++++ 1 file changed, 12 insertions(+)
Reviewed-by: Simon Glass sjg@chromium.org

On Sat, Jan 29, 2022 at 04:33:16PM +0100, Heinrich Schuchardt wrote:
The output size for snprint() should not only be respected for whole fields but also with fields. Add more tests.
Signed-off-by: Heinrich Schuchardt heinrich.schuchardt@canonical.com
Applied to u-boot/master, thanks!
participants (3)
-
Heinrich Schuchardt
-
Simon Glass
-
Tom Rini