aboutsummaryrefslogtreecommitdiff
path: root/test/src
diff options
context:
space:
mode:
Diffstat (limited to 'test/src')
-rw-r--r--test/src/mem/test_ft_calloc.c17
-rw-r--r--test/src/mem/test_ft_memccpy.c21
-rw-r--r--test/src/mem/test_ft_memchr.c11
-rw-r--r--test/src/mem/test_ft_memcmp.c18
-rw-r--r--test/src/mem/test_ft_memmem.c41
-rw-r--r--test/src/mem/test_ft_memmove.c15
-rw-r--r--test/src/mem/test_ft_memset_pattern4.c18
-rw-r--r--test/src/runner/test_runner_mem.c3
8 files changed, 137 insertions, 7 deletions
diff --git a/test/src/mem/test_ft_calloc.c b/test/src/mem/test_ft_calloc.c
index 1497728..9944f41 100644
--- a/test/src/mem/test_ft_calloc.c
+++ b/test/src/mem/test_ft_calloc.c
@@ -10,5 +10,22 @@ TEST_TEAR_DOWN(ft_calloc)
TEST(ft_calloc, basic)
{
+ char *ptr = NULL;
+ ptr = ft_calloc(45, sizeof(char));
+ TEST_ASSERT_NOT_NULL(ptr);
+#ifdef __APPLE__
+ TEST_ASSERT_GREATER_THAN(45 * sizeof(char) - 1, malloc_size(ptr));
+#endif
+ for (int i = 0; i < 45; i++)
+ TEST_ASSERT_EQUAL(0x0, ptr[i]);
+
+ int *ptrint = NULL;
+ ptrint = ft_calloc(10, sizeof(int));
+ TEST_ASSERT_NOT_NULL(ptr);
+#ifdef __APPLE__
+ TEST_ASSERT_GREATER_THAN(10 * sizeof(int) - 1, malloc_size(ptrint));
+#endif
+ for (int i = 0; i < 10; i++)
+ TEST_ASSERT_EQUAL(0x0, ptrint[i]);
}
diff --git a/test/src/mem/test_ft_memccpy.c b/test/src/mem/test_ft_memccpy.c
index 6b7a1a5..39925a1 100644
--- a/test/src/mem/test_ft_memccpy.c
+++ b/test/src/mem/test_ft_memccpy.c
@@ -6,7 +6,7 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/02/13 03:34:13 by cacharle #+# #+# */
-/* Updated: 2020/02/13 03:40:18 by cacharle ### ########.fr */
+/* Updated: 2020/02/13 19:35:17 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -22,5 +22,24 @@ TEST_TEAR_DOWN(ft_memccpy)
TEST(ft_memccpy, basic)
{
+ char buf[32] = "bonjour";
+ char buf2[32] = {0};
+ char *ptr = ft_memccpy(buf2, buf, 0x0, 32);
+ TEST_ASSERT_EQUAL_PTR(&buf2[8], ptr);
+ for (int i = 0; i < 32; i++)
+ TEST_ASSERT_EQUAL_CHAR(buf[i], buf2[i]);
+
+ ptr = ft_memccpy(buf2, buf, 0x1, 32);
+ TEST_ASSERT_NULL(ptr);
+ for (int i = 0; i < 32; i++)
+ TEST_ASSERT_EQUAL_CHAR(buf[i], buf2[i]);
+
+ char buf3[10] = "aurevoir";
+ ptr = ft_memccpy(buf, buf3, 'e', 10);
+ TEST_ASSERT_EQUAL_PTR(buf + 4, ptr);
+ for (int i = 0; i < 4; i++)
+ TEST_ASSERT_EQUAL_CHAR(buf[i], buf3[i]);
+ for (int i = 4; i < 32; i++)
+ TEST_ASSERT_EQUAL_CHAR(buf[i], buf2[i]);
}
diff --git a/test/src/mem/test_ft_memchr.c b/test/src/mem/test_ft_memchr.c
index c0b2ae6..135edfb 100644
--- a/test/src/mem/test_ft_memchr.c
+++ b/test/src/mem/test_ft_memchr.c
@@ -6,7 +6,7 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/02/13 03:33:14 by cacharle #+# #+# */
-/* Updated: 2020/02/13 03:40:28 by cacharle ### ########.fr */
+/* Updated: 2020/02/13 19:38:17 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -22,5 +22,14 @@ TEST_TEAR_DOWN(ft_memchr)
TEST(ft_memchr, basic)
{
+ char *a = "bonjour";
+ char *ptr = ft_memchr(a, 'j', sizeof(a));
+ TEST_ASSERT_EQUAL_PTR(a + 3, ptr);
+
+ ptr = ft_memchr(a, 'z', sizeof(a));
+ TEST_ASSERT_NULL(ptr);
+
+ ptr = ft_memchr(a, '\0', sizeof(a));
+ TEST_ASSERT_EQUAL_PTR(a + 7, ptr);
}
diff --git a/test/src/mem/test_ft_memcmp.c b/test/src/mem/test_ft_memcmp.c
index 363b06a..81871a1 100644
--- a/test/src/mem/test_ft_memcmp.c
+++ b/test/src/mem/test_ft_memcmp.c
@@ -6,7 +6,7 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/02/13 03:32:16 by cacharle #+# #+# */
-/* Updated: 2020/02/13 03:40:36 by cacharle ### ########.fr */
+/* Updated: 2020/02/13 19:41:08 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -22,5 +22,21 @@ TEST_TEAR_DOWN(ft_memcmp)
TEST(ft_memcmp, basic)
{
+ char buf1[32] = "bonjour";
+ char buf2[32] = "bonjoure";
+ int res = ft_memcmp(buf1, buf2, 32);
+ TEST_ASSERT_LESS_THAN(0, res);
+
+ res = ft_memcmp(buf2, buf1, 32);
+ TEST_ASSERT_GREATER_THAN(0, res);
+
+ res = ft_memcmp(buf2, buf1, 7);
+ TEST_ASSERT_EQUAL(0, res);
+ res = ft_memcmp(buf2, buf1, 6);
+ TEST_ASSERT_EQUAL(0, res);
+ res = ft_memcmp(buf2, buf1, 3);
+ TEST_ASSERT_EQUAL(0, res);
+ res = ft_memcmp(buf2, buf1, 0);
+ TEST_ASSERT_EQUAL(0, res);
}
diff --git a/test/src/mem/test_ft_memmem.c b/test/src/mem/test_ft_memmem.c
index 6492657..67514a5 100644
--- a/test/src/mem/test_ft_memmem.c
+++ b/test/src/mem/test_ft_memmem.c
@@ -6,7 +6,7 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/02/13 03:33:50 by cacharle #+# #+# */
-/* Updated: 2020/02/13 03:41:09 by cacharle ### ########.fr */
+/* Updated: 2020/02/13 21:04:22 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -22,5 +22,44 @@ TEST_TEAR_DOWN(ft_memmem)
TEST(ft_memmem, basic)
{
+ char haystack[32] = "bonjour";
+ char *ptr;
+ ptr = ft_memmem(haystack, sizeof(haystack), "jour\0", 5);
+ TEST_ASSERT_EQUAL_PTR(haystack + 3, ptr);
+
+ ptr = ft_memmem(haystack, sizeof(haystack), "jour", 4);
+ TEST_ASSERT_EQUAL_PTR(haystack + 3, ptr);
+
+ ptr = ft_memmem(haystack, sizeof(haystack), "jo", 2);
+ TEST_ASSERT_EQUAL_PTR(haystack + 3, ptr);
+
+ ptr = ft_memmem(haystack, sizeof(haystack), "j", 1);
+ TEST_ASSERT_EQUAL_PTR(haystack + 3, ptr);
+
+ ptr = ft_memmem(haystack, sizeof(haystack), "yo", 2);
+ TEST_ASSERT_NULL(ptr);
+
+ ptr = ft_memmem(haystack, sizeof(haystack), "\0", 1);
+ TEST_ASSERT_EQUAL_PTR(haystack + 7, ptr);
+
+ ptr = ft_memmem(haystack, sizeof(haystack), "bon", 3);
+ TEST_ASSERT_EQUAL_PTR(haystack, ptr);
+
+ ptr = ft_memmem(haystack, sizeof(haystack), "on", 2);
+ TEST_ASSERT_EQUAL_PTR(haystack + 1, ptr);
+}
+
+TEST(ft_memmem, invalid_len)
+{
+ char buf[32] = {0};
+
+ void *ptr = ft_memmem(buf, 2, "jour", 4);
+ TEST_ASSERT_NULL(ptr);
+
+ ptr = ft_memmem(buf, 0, "jour", 4);
+ TEST_ASSERT_NULL(ptr);
+
+ ptr = ft_memmem(buf, 2, "jour", 0);
+ TEST_ASSERT_NULL(ptr);
}
diff --git a/test/src/mem/test_ft_memmove.c b/test/src/mem/test_ft_memmove.c
index adbb3b0..158cda9 100644
--- a/test/src/mem/test_ft_memmove.c
+++ b/test/src/mem/test_ft_memmove.c
@@ -6,7 +6,7 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/02/13 03:34:21 by cacharle #+# #+# */
-/* Updated: 2020/02/13 03:41:18 by cacharle ### ########.fr */
+/* Updated: 2020/02/13 19:49:07 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -22,5 +22,18 @@ TEST_TEAR_DOWN(ft_memmove)
TEST(ft_memmove, basic)
{
+ char buf1[32] = "bonjour";
+ char *ptr = ft_memmove(buf1, buf1 + 2, 29);
+ TEST_ASSERT_EQUAL_PTR(buf1, ptr);
+ TEST_ASSERT_EQUAL_STRING("njour", buf1);
+
+ ptr = ft_memmove(buf1 + 2, buf1, 29);
+ TEST_ASSERT_EQUAL_PTR(buf1 + 2, ptr);
+ TEST_ASSERT_EQUAL_STRING("njour", ptr);
+ TEST_ASSERT_EQUAL_STRING("njnjour", buf1);
+
+ ptr = ft_memmove(buf1, buf1, 32);
+ TEST_ASSERT_EQUAL_PTR(buf1, ptr);
+ TEST_ASSERT_EQUAL_STRING("njnjour", ptr);
}
diff --git a/test/src/mem/test_ft_memset_pattern4.c b/test/src/mem/test_ft_memset_pattern4.c
index 9a0f109..0e2806a 100644
--- a/test/src/mem/test_ft_memset_pattern4.c
+++ b/test/src/mem/test_ft_memset_pattern4.c
@@ -6,7 +6,7 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/02/13 03:32:43 by cacharle #+# #+# */
-/* Updated: 2020/02/13 03:41:36 by cacharle ### ########.fr */
+/* Updated: 2020/02/13 19:57:48 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -22,5 +22,21 @@ TEST_TEAR_DOWN(ft_memset_pattern4)
TEST(ft_memset_pattern4, basic)
{
+ char buf[17] = {0};
+ char *pattern4 = "1234";
+ ft_memset_pattern4(buf, pattern4, 16);
+ TEST_ASSERT_EQUAL_STRING("1234123412341234", buf);
+
+ char buf1[10] = {0};
+ ft_memset_pattern4(buf1, "1234", 9);
+ TEST_ASSERT_EQUAL_STRING("123412341", buf1);
+
+ char buf2[11] = {0};
+ ft_memset_pattern4(buf2, "1234", 10);
+ TEST_ASSERT_EQUAL_STRING("1234123412", buf2);
+
+ char buf3[12] = {0};
+ ft_memset_pattern4(buf3, "1234", 11);
+ TEST_ASSERT_EQUAL_STRING("12341234123", buf3);
}
diff --git a/test/src/runner/test_runner_mem.c b/test/src/runner/test_runner_mem.c
index 155008b..093d064 100644
--- a/test/src/runner/test_runner_mem.c
+++ b/test/src/runner/test_runner_mem.c
@@ -6,7 +6,7 @@
/* By: cacharle <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2020/02/13 03:36:16 by cacharle #+# #+# */
-/* Updated: 2020/02/13 03:39:11 by cacharle ### ########.fr */
+/* Updated: 2020/02/13 20:40:24 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -45,6 +45,7 @@ TEST_GROUP_RUNNER(ft_memcpy)
TEST_GROUP_RUNNER(ft_memmem)
{
RUN_TEST_CASE(ft_memmem, basic);
+ RUN_TEST_CASE(ft_memmem, invalid_len);
}
TEST_GROUP_RUNNER(ft_memmove)