diff --git a/ft_strlcpy_expected.output b/ft_strlcpy_expected.output new file mode 100644 index 0000000..12858a6 --- /dev/null +++ b/ft_strlcpy_expected.output @@ -0,0 +1,3 @@ +test 1: size:[10], src:[Lorem ipsum dolor sit amet consectetur adipiscing elit.], dest:[XXXXXXXXXXXX], result:[55], dest:[Lorem ips] +test 2: size:[10], src:[Lorem i], dest:[XXXXXXXXXXXX], result:[7], dest:[Lorem i] +test 3: size:[5], src:[Lorem ip], dest:[XXXXXXXX], result:[8], dest:[Lore] diff --git a/ft_strlcpy_test.c b/ft_strlcpy_test.c index c86225f..f333a1e 100644 --- a/ft_strlcpy_test.c +++ b/ft_strlcpy_test.c @@ -6,7 +6,7 @@ /* By: lalgarra +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/10/05 13:21:43 by lalgarra #+# #+# */ -/* Updated: 2025/10/05 14:52:21 by lalgarra ### ########.fr */ +/* Updated: 2025/10/05 19:49:14 by lalgarra ### ########.fr */ /* */ /* ************************************************************************** */ @@ -14,46 +14,16 @@ #include #include -/* -static void do_test3(char *prefix) +static void test(char *prefix, char src[], char dest[], size_t size) { - int *buff; - size_t buflen; - size_t size; - - buflen = 5; - size = 0; - buff = ft_calloc(buflen, size); - printf("%ssize= %lu; buff == NULL: %i\n", prefix, size, buff == NULL); - free(buff); -} - -static void do_test2(char *prefix) -{ - int *buff; - size_t buflen; - - buflen = 0; - buff = ft_calloc(buflen, sizeof(int)); - printf("%sbuflen = %lu; buff == NULL: %i\n", prefix, buflen, buff == NULL); - free(buff); -} -*/ -static void do_test1(char *prefix) -{ - char src[128]; - char dest[128]; - int fd; - size_t size; size_t res; + int fd; fd = STDOUT_FILENO; - size = 10; - bzero(dest, size); - memcpy(src, "Lorem ipsum dolor sit amet consectetur adipiscing elit.", 56); - memset(dest, 'X', size + 2); ft_putstr_fd(prefix, fd); - ft_putstr_fd("src:[", fd); + ft_putstr_fd("size:[", fd); + ft_putnbr_fd((int) size, fd); + ft_putstr_fd("], src:[", fd); ft_putstr_fd(src, fd); ft_putstr_fd("], dest:[", fd); ft_putstr_fd(dest, fd); @@ -65,8 +35,52 @@ static void do_test1(char *prefix) ft_putendl_fd("]", fd); } +static void zero(char src[], char dest[]) +{ + bzero(src, 128); + bzero(dest, 128); +} + +static void do_test1(char *prefix, char src[], char dest[]) +{ + size_t size; + + size = 10; + zero(src, dest); + memcpy(src, "Lorem ipsum dolor sit amet consectetur adipiscing elit.", 56); + memset(dest, 'X', size + 2); + test(prefix, src, dest, size); +} + +static void do_test2(char *prefix, char src[], char dest[]) +{ + size_t size; + + zero(src, dest); + size = 10; + memcpy(src, "Lorem ipsum dolor sit amet consectetur adipiscing elit.", size - 3); + memset(dest, 'X', size + 2); + test(prefix, src, dest, size); +} + +static void do_test3(char *prefix, char src[], char dest[]) +{ + size_t size; + + zero(src, dest); + size = 5; + memcpy(src, "Lorem ipsum dolor sit amet consectetur adipiscing elit.", size + 3); + memset(dest, 'X', size + 3); + test(prefix, src, dest, size); +} + int main(void) { - do_test1("test 1: "); + char src[128]; + char dest[128]; + + do_test1("test 1: ", src, dest); + do_test2("test 2: ", src, dest); + do_test3("test 3: ", src, dest); return (0); }