Compare commits

...

2 Commits

Author SHA1 Message Date
1c7245213e add: strcpy test 2024-09-02 14:58:05 +02:00
b86d5dbab9 strcpy: fix: return value 2024-09-02 14:57:56 +02:00
2 changed files with 27 additions and 5 deletions

View File

@ -15,5 +15,5 @@ loop:
jmp loop jmp loop
out: out:
mov rax, rcx mov rax, rdi
ret ret

View File

@ -20,7 +20,7 @@ void test_int(int expected_value, int value)
void test_str(const char *expected_value, const char *value) void test_str(const char *expected_value, const char *value)
{ {
if (strcmp(expected_value, value) == 0) if (strcmp(expected_value, value))
printf("[FAILED] %s != %s", expected_value, value); printf("[FAILED] %s != %s", expected_value, value);
else else
printf("[OK]"); printf("[OK]");
@ -46,13 +46,35 @@ void multiple_test_int_2(int (*normal_func)(const char *, const char *), int (*o
} }
} }
void multiple_test_strcpy(int (*own_func)(char *, const char *), const char * const *values)
{
char tmp[4096];
for (size_t i = 0; values[i] != NULL; i++)
{
printf("test: %s", values[i]);
test_int(strcpy(tmp, values[i]), own_func(tmp, values[i]));
test_str(values[i], tmp);
printf("\n");
}
}
int main() int main()
{ {
printf("STRLEN\n");
const char *strlen_tests[] = {"yo", "", "bonjour", "co\0fgf", NULL}; const char *strlen_tests[] = {"yo", "", "bonjour", "co\0fgf", NULL};
multiple_test_int(strlen, ft_strlen, strlen_tests);
multiple_test_int(&strlen, ft_strlen, strlen_tests); printf("\n");
printf("STRCMP\n");
const char *strcmp_tests[][2] = {{"w", "z"}, {"bonjour", "bonjour"}, {"", ""}, {"bonjour", "salut"}, {"co\0fgf", "co\0fgf"}, NULL}; const char *strcmp_tests[][2] = {{"w", "z"}, {"bonjour", "bonjour"}, {"", ""}, {"bonjour", "salut"}, {"co\0fgf", "co\0fgf"}, NULL};
multiple_test_int_2(strcmp, ft_strcmp, strcmp_tests);
printf("\n");
multiple_test_int_2(&strcmp, ft_strcmp, strcmp_tests);
printf("STRCPY\n");
const char *strcpy_tests[] = {"yo", "", "bonjour", "co\0fgf", NULL};
multiple_test_strcpy(ft_strcpy, strcpy_tests);
printf("\n");
} }