]> git.ipfire.org Git - thirdparty/git.git/commit
t/unit-tests: convert ctype tests to use clar
authorPatrick Steinhardt <ps@pks.im>
Wed, 4 Sep 2024 14:17:22 +0000 (16:17 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 4 Sep 2024 15:41:37 +0000 (08:41 -0700)
commitc9763684ea1da13fc511eebeea3bc0b80c6c9c0e
tree4084ac62533c6c9099117f9a477ad14c6400dcaf
parentd7f0c47964adc7ec6b6f5ef211c91be822587fb0
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>
Makefile
t/unit-tests/ctype.c [moved from t/unit-tests/t-ctype.c with 68% similarity]
t/unit-tests/unit-test.h