aboutsummaryrefslogtreecommitdiff
path: root/ft_strlen_test.c
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2019-11-23 20:31:58 +0100
committerCharles <sircharlesaze@gmail.com>2019-11-23 20:31:58 +0100
commit0696a5c7f9abe5451a0baf3170296704714fcce8 (patch)
tree9b7380e82bcd5aba703d9bc23c355a31e542f78b /ft_strlen_test.c
parent99ebb4cc698da33c2f8aad8bb5d71ef060a01560 (diff)
downloadlibasm_test-0696a5c7f9abe5451a0baf3170296704714fcce8.tar.gz
libasm_test-0696a5c7f9abe5451a0baf3170296704714fcce8.tar.bz2
libasm_test-0696a5c7f9abe5451a0baf3170296704714fcce8.zip
Basic segfault and comparison test for ft_strlen.s
Diffstat (limited to 'ft_strlen_test.c')
-rw-r--r--ft_strlen_test.c40
1 files changed, 39 insertions, 1 deletions
diff --git a/ft_strlen_test.c b/ft_strlen_test.c
index 8c5d982..1e5caf0 100644
--- a/ft_strlen_test.c
+++ b/ft_strlen_test.c
@@ -1,7 +1,45 @@
#include "libasm_test.h"
+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("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\
+bibendum dolor mi, id fringilla tellus pulvinar eu. Fusce vel fermentum sem. Cras\
+volutpat, eros eget rhoncus rhoncus, diam augue egestas dolor, vitae rutrum nisi\
+felis sed purus. Mauris magna ex, mollis non suscipit eu, lacinia ac turpis. Phasellus\
+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("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\
+bibendum dolor mi, id fringilla tellus pulvinar eu. Fusce vel fermentum sem. Cras\
+volutpat, eros eget rhoncus rhoncus, diam augue egestas dolor, vitae rutrum nisi\
+felis sed purus. Mauris magna ex, mollis non suscipit eu, lacinia ac turpis. Phasellus\
+ac tortor et lectus fermentum lobortis eu at mauris. Vestibulum sit amet posuere\
+tortor, sit amet consequat amet.");
+}
+
void
ft_strlen_test(void)
{
-
+ test_name = "ft_strlen.s";
+ ft_strlen_test_segfault();
+ ft_strlen_test_compare();
}