Re: [PATCH v2] t-strvec: use test_msg()
From: René Scharfe <hidden>
Date: 2024-07-14 10:17:22
Am 09.07.24 um 13:32 schrieb Jeff King:
On Fri, Jul 05, 2024 at 07:03:36PM +0200, René Scharfe wrote:quoted
diff --git a/t/unit-tests/t-strvec.c b/t/unit-tests/t-strvec.c index d4615ab06d..236203af61 100644 --- a/t/unit-tests/t-strvec.c +++ b/t/unit-tests/t-strvec.c@@ -17,12 +17,12 @@ static void check_strvec_loc(const char *loc, struct strvec *vec, ...) break; if (!check_uint(vec->nr, >, nr) || - !check_uint(vec->alloc, >, nr) || - !check_str(vec->v[nr], str)) { - struct strbuf msg = STRBUF_INIT; - strbuf_addf(&msg, "strvec index %"PRIuMAX, (uintmax_t) nr); - test_assert(loc, msg.buf, 0); - strbuf_release(&msg); + !check_uint(vec->alloc, >, nr)) { + va_end(ap); + return; + } + if (!check_str(vec->v[nr], str)) { + test_msg(" nr: %"PRIuMAX, (uintmax_t)nr); va_end(ap); return; }The "loc" parameter to the function is now unused. Should it be removed, or is it a bug that we are no longer reporting the caller's location?
It's a bug. If only there was a way to detect such an unused parameter automatically.. ;->
Should we be using check_str_loc() in the post-image?
Yes, and check_uint_loc() and check_pointer_eq_loc() as well. Which would be a pain. Or we drag everything into the macro check_strvec and get the caller's line number for free. René