From 1eb2d4832a590c809e38840f970b4506661c89cf Mon Sep 17 00:00:00 2001 From: Charles Date: Sun, 12 Apr 2020 20:13:38 +0200 Subject: Printing ft_strlen and ft_strcmp arguments on failed test --- Makefile | 6 +++--- helper.c | 12 +----------- libasm_test.h | 4 +--- test/ft_strcmp_test.c | 44 ++++++++++++++++++++------------------------ test/ft_strlen_test.c | 21 ++++++++++++++++----- 5 files changed, 41 insertions(+), 46 deletions(-) diff --git a/Makefile b/Makefile index 012a49e..051b947 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ # By: cacharle +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2020/02/08 03:06:59 by cacharle #+# #+# # -# Updated: 2020/02/08 21:02:52 by cacharle ### ########.fr # +# Updated: 2020/04/12 20:12:48 by charles ### ########.fr # # # # **************************************************************************** # @@ -22,7 +22,7 @@ endif LIBASM_PATH = ../libasm CC = gcc -CCFLAGS = -I. -Wall -Wextra -g +CCFLAGS = -I. -Wall -Wextra LDFLAGS = -L$(LIBASM_PATH) -lasm NAME = runtest @@ -68,7 +68,7 @@ allbonus: CCFLAGS += -D LIBASM_TEST_BONUS allbonus: all $(NAME): libasm_all $(OBJ) - $(CC) -o $@ $(OBJ) $(LDFLAGS) + $(CC) -o $@ $(OBJ) $(LDFLAGS) %.o: %.c $(CC) $(CCFLAGS) -c -o $@ $< diff --git a/helper.c b/helper.c index c831090..17d7bcb 100644 --- a/helper.c +++ b/helper.c @@ -6,7 +6,7 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/08 03:07:07 by cacharle #+# #+# */ -/* Updated: 2020/02/08 03:07:08 by cacharle ### ########.fr */ +/* Updated: 2020/04/12 20:05:58 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -26,13 +26,3 @@ print_signaled_ko(void) printf("KO: [SEGFAULT]: %s\n", test_name); fflush(stdout); } - -void -expect_int(int expected, int actual) -{ - if (actual != expected) - printf("KO: [COMPARE]: %s: expected: %d got: %d\n", test_name, expected, actual); - else - print_ok(); - fflush(stdout); -} diff --git a/libasm_test.h b/libasm_test.h index b3805e4..acc2b41 100644 --- a/libasm_test.h +++ b/libasm_test.h @@ -6,7 +6,7 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/08 03:07:19 by cacharle #+# #+# */ -/* Updated: 2020/02/08 03:07:20 by cacharle ### ########.fr */ +/* Updated: 2020/04/12 20:06:05 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -102,8 +102,6 @@ void print_ok(void); void print_signaled_ko(void); -void -expect_int(int expected, int actual); int* create_data_elem(int data); diff --git a/test/ft_strcmp_test.c b/test/ft_strcmp_test.c index 5f13ce7..13b69e7 100644 --- a/test/ft_strcmp_test.c +++ b/test/ft_strcmp_test.c @@ -6,19 +6,34 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/08 03:08:03 by cacharle #+# #+# */ -/* Updated: 2020/02/08 03:08:03 by cacharle ### ########.fr */ +/* Updated: 2020/04/12 20:08:08 by charles ### ########.fr */ /* */ /* ************************************************************************** */ #include "libasm_test.h" +int strcmp_expected; +int strcmp_actual; + +# define FT_STRCMP_EXPECT(s1, s2) do { \ + strcmp_expected = strcmp(s1, s2); \ + strcmp_actual = ft_strcmp(s1, s2); \ + if ((strcmp_expected < 0 && strcmp_actual < 0) || \ + (strcmp_expected > 0 && strcmp_actual > 0) || \ + (strcmp_expected == 0 && strcmp_actual == 0)) \ + print_ok(); \ + else \ + printf("KO: [COMPARE]: ft_strcmp.s: expected: %d got: %d with: "#s1", "#s2"\n", \ + strcmp_expected, strcmp_actual); \ +} while (0); + static void ft_strcmp_test_segfault(void) { TEST_ASM_FUNCTION(ft_strcmp("", "")); TEST_ASM_FUNCTION(ft_strcmp("bon", "bon")); TEST_ASM_FUNCTION(ft_strcmp("bonjour", "bonjour")); - TEST_ASM_FUNCTION(ft_strcmp("%c%s%p%x%X%e%f%g", "%c%s%p%x%X%e%f%g")); + TEST_ASM_FUNCTION(ft_strcmp("abcdefghijasdf1324''klji//", "abcdefghijasdf1324''klji//")); TEST_ASM_FUNCTION(ft_strcmp("the\0hidden", "the\0hidden")); TEST_ASM_FUNCTION(ft_strcmp("Lorem ipsum dolor sit amet, consectetur adipiscing\ elit. Sed in malesuada purus. Etiam a scelerisque massa. Ut non euismod elit. Aliquam\ @@ -36,32 +51,13 @@ ac tortor et lectus fermentum lobortis eu at mauris. Vestibulum sit amet posuere tortor, sit amet consequat amet.")); } -int strcmp_expected; -int strcmp_actual; - -#ifdef __linux__ -# define FT_STRCMP_EXPECT(s1, s2) do { \ - strcmp_expected = strcmp(s1, s2); \ - strcmp_actual = ft_strcmp(s1, s2); \ - if ((strcmp_expected < 0 && strcmp_actual < 0) || \ - (strcmp_expected > 0 && strcmp_actual > 0) || \ - (strcmp_expected == 0 && strcmp_actual == 0)) \ - print_ok(); \ - else \ - printf("KO: [COMPARE]: ft_strcmp.s: expected: %d got: %d\n", \ - strcmp_expected, strcmp_actual); \ -} while (0); -#else -# define FT_STRCMP_EXPECT(s1, s2) expect_int(strcmp(s1, s2), ft_strcmp(s1, s2)) -#endif - static void ft_strcmp_test_compare(void) { FT_STRCMP_EXPECT("", ""); FT_STRCMP_EXPECT("bon", ""); FT_STRCMP_EXPECT("bonjour", ""); - FT_STRCMP_EXPECT("%c%s%p%x%X%e%f%g", ""); + FT_STRCMP_EXPECT("asdklfjasdfj////asdf'''asdf3##", ""); FT_STRCMP_EXPECT("the\0hidden", ""); FT_STRCMP_EXPECT("Lorem ipsum dolor sit amet, consectetur adipiscing\ elit. Sed in malesuada purus. Etiam a scelerisque massa. Ut non euismod elit. Aliquam\ @@ -73,7 +69,7 @@ tortor, sit amet consequat amet.", ""); FT_STRCMP_EXPECT("", ""); FT_STRCMP_EXPECT("bon", "bon"); FT_STRCMP_EXPECT("bonjour", "bonjour"); - FT_STRCMP_EXPECT("%c%s%p%x%X%e%f%g", "%c%s%p%x%X%e%f%g"); + FT_STRCMP_EXPECT("asdklfjasdfj////asdf'''asdf3##", "asdklfjasdfj////asdf'''asdf3##"); FT_STRCMP_EXPECT("the\0hidden", "the\0hidden"); FT_STRCMP_EXPECT("Lorem ipsum dolor sit amet, consectetur adipiscing\ elit. Sed in malesuada purus. Etiam a scelerisque massa. Ut non euismod elit. Aliquam\ @@ -93,7 +89,7 @@ tortor, sit amet consequat amet."); FT_STRCMP_EXPECT("", "asdf"); FT_STRCMP_EXPECT("bon", "bo"); FT_STRCMP_EXPECT("bonjour", "onjour"); - FT_STRCMP_EXPECT("%c%s%p%x%X%e%f%g", "%s%p%x%X%e%f%g"); + FT_STRCMP_EXPECT("asdklfjasdfj////asdf'''asdf3##", "asdklfjasdfj////asdf'''asdf3##"); FT_STRCMP_EXPECT("the\0hidden", "thehidden"); FT_STRCMP_EXPECT("Lorem ipsum dolor st amet, consectetur adipiscing", "Lodsfsdfasdf"); diff --git a/test/ft_strlen_test.c b/test/ft_strlen_test.c index 1c500ae..e92f668 100644 --- a/test/ft_strlen_test.c +++ b/test/ft_strlen_test.c @@ -6,19 +6,32 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/02/08 03:07:53 by cacharle #+# #+# */ -/* Updated: 2020/02/08 03:07:53 by cacharle ### ########.fr */ +/* Updated: 2020/04/12 20:08:55 by charles ### ########.fr */ /* */ /* ************************************************************************** */ #include "libasm_test.h" +int actual; +int expected; + +#define FT_STRLEN_EXPECT(str) do { \ + actual = ft_strlen(str); \ + expected = strlen(str); \ + if (actual != expected) \ + printf("KO: [COMPARE]: %s: expected: %d got: %d with: "#str"\n", \ + test_name, expected, actual); \ + else \ + print_ok(); \ +} while (0); + static void ft_strlen_test_segfault(void) { TEST_ASM_FUNCTION(ft_strlen("")); TEST_ASM_FUNCTION(ft_strlen("bon")); TEST_ASM_FUNCTION(ft_strlen("bonjour")); - TEST_ASM_FUNCTION(ft_strlen("%c%s%p%x%X%e%f%g")); + TEST_ASM_FUNCTION(ft_strlen("asdfasdf''///##!!@")); TEST_ASM_FUNCTION(ft_strlen("the\0hidden")); TEST_ASM_FUNCTION(ft_strlen("Lorem ipsum dolor sit amet, consectetur adipiscing\ elit. Sed in malesuada purus. Etiam a scelerisque massa. Ut non euismod elit. Aliquam\ @@ -29,15 +42,13 @@ ac tortor et lectus fermentum lobortis eu at mauris. Vestibulum sit amet posuere tortor, sit amet consequat amet.")); } -#define FT_STRLEN_EXPECT(str) expect_int(strlen(str), ft_strlen(str)) - static void ft_strlen_test_compare(void) { FT_STRLEN_EXPECT(""); FT_STRLEN_EXPECT("bon"); FT_STRLEN_EXPECT("bonjour"); - FT_STRLEN_EXPECT("%c%s%p%x%X%e%f%g"); + FT_STRLEN_EXPECT("asdfasdf''///##!!@"); FT_STRLEN_EXPECT("the\0hidden"); FT_STRLEN_EXPECT("Lorem ipsum dolor sit amet, consectetur adipiscing\ elit. Sed in malesuada purus. Etiam a scelerisque massa. Ut non euismod elit. Aliquam\ -- cgit