diff options
| author | Thomas Vanbesien <tvanbesi@proton.me> | 2026-02-21 12:39:20 +0100 |
|---|---|---|
| committer | Thomas Vanbesien <tvanbesi@proton.me> | 2026-02-21 12:39:34 +0100 |
| commit | d699849b2360f90c61f645c5d4d4232cd3e1c962 (patch) | |
| tree | c929ec20ca3b16fe3d34bd75e412ca49f7420125 /tests/test_is.c | |
| download | Libft-d699849b2360f90c61f645c5d4d4232cd3e1c962.tar.gz Libft-d699849b2360f90c61f645c5d4d4232cd3e1c962.zip | |
Initial commit: libft Part 1 with tests and documentation
Reimplements 24 libc functions with Doxygen-documented header
and test suite comparing against libc.
Diffstat (limited to 'tests/test_is.c')
| -rw-r--r-- | tests/test_is.c | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/test_is.c b/tests/test_is.c new file mode 100644 index 0000000..1af5d40 --- /dev/null +++ b/tests/test_is.c @@ -0,0 +1,43 @@ +#include "../libft.h" +#include "test_utils.h" +#include <ctype.h> + +static void +_s_test_func (const char *name, int (*ft) (int), int (*libc) (int)) +{ + int i; + int ft_r; + int libc_r; + int ok; + + ok = 1; + for (i = -1; i <= 255; i++) + { + ft_r = !!ft (i); + libc_r = !!libc (i); + if (ft_r != libc_r) + { + printf (" FAIL %s(%d): ft=%d libc=%d\n", name, i, ft_r, libc_r); + _s_fail++; + ok = 0; + } + } + if (ok) + { + printf (" PASS %s (all -1..255)\n", name); + _s_pass++; + } +} + +int +main (void) +{ + printf ("=== is* functions ===\n"); + _s_test_func ("ft_isalpha", ft_isalpha, isalpha); + _s_test_func ("ft_isdigit", ft_isdigit, isdigit); + _s_test_func ("ft_isalnum", ft_isalnum, isalnum); + _s_test_func ("ft_isascii", ft_isascii, isascii); + _s_test_func ("ft_isprint", ft_isprint, isprint); + _s_print_results (); + return (_s_fail != 0); +} |
