diff options
author | Patrick Steinhardt <ps@pks.im> | 2024-09-04 16:17:22 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2024-09-04 08:41:37 -0700 |
commit | c9763684ea1da13fc511eebeea3bc0b80c6c9c0e (patch) | |
tree | 4084ac62533c6c9099117f9a477ad14c6400dcaf /t/unit-tests/unit-test.h | |
parent | d7f0c47964adc7ec6b6f5ef211c91be822587fb0 (diff) |
t/unit-tests: convert ctype tests to use clar
Convert the ctype tests to use the new clar unit testing framework.
Introduce a new function `cl_failf()` that allows us to print a
formatted error message, which we can use to point out which of the
characters was classified incorrectly. This results in output like this
on failure:
# start of suite 1: ctype
not ok 1 - ctype::isspace
---
reason: |
Test failed.
0x0d is classified incorrectly: expected 0, got 1
at:
file: 't/unit-tests/ctype.c'
line: 36
function: 'test_ctype__isspace'
---
ok 2 - ctype::isdigit
ok 3 - ctype::isalpha
ok 4 - ctype::isalnum
ok 5 - ctype::is_glob_special
ok 6 - ctype::is_regex_special
ok 7 - ctype::is_pathspec_magic
ok 8 - ctype::isascii
ok 9 - ctype::islower
ok 10 - ctype::isupper
ok 11 - ctype::iscntrl
ok 12 - ctype::ispunct
ok 13 - ctype::isxdigit
ok 14 - ctype::isprint
Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/unit-tests/unit-test.h')
-rw-r--r-- | t/unit-tests/unit-test.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/t/unit-tests/unit-test.h b/t/unit-tests/unit-test.h index 66ec2387cc..85e5d6a948 100644 --- a/t/unit-tests/unit-test.h +++ b/t/unit-tests/unit-test.h @@ -1,3 +1,10 @@ #include "git-compat-util.h" #include "clar/clar.h" #include "clar-decls.h" +#include "strbuf.h" + +#define cl_failf(fmt, ...) do { \ + char desc[4096]; \ + snprintf(desc, sizeof(desc), fmt, __VA_ARGS__); \ + clar__fail(__FILE__, __func__, __LINE__, "Test failed.", desc, 1); \ +} while (0) |