aboutsummaryrefslogtreecommitdiff
path: root/test/ft_strlen_test.c
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-01-14 15:50:09 +0100
committerCharles <sircharlesaze@gmail.com>2020-01-14 15:50:09 +0100
commit1ab2fedd108b26c9624454a897e2c518aaff7d32 (patch)
treefff428b72e018b2f17bea7c3cd5eb19ff096ea7f /test/ft_strlen_test.c
parent66bfb5efc23b4dd9819bf70b5a709c81ccf7a820 (diff)
downloadlibasm_test-1ab2fedd108b26c9624454a897e2c518aaff7d32.tar.gz
libasm_test-1ab2fedd108b26c9624454a897e2c518aaff7d32.tar.bz2
libasm_test-1ab2fedd108b26c9624454a897e2c518aaff7d32.zip
Linux portability, moved tests to test/ dir
Diffstat (limited to 'test/ft_strlen_test.c')
-rw-r--r--test/ft_strlen_test.c46
1 files changed, 46 insertions, 0 deletions
diff --git a/test/ft_strlen_test.c b/test/ft_strlen_test.c
new file mode 100644
index 0000000..7229316
--- /dev/null
+++ b/test/ft_strlen_test.c
@@ -0,0 +1,46 @@
+#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();
+ if (!signaled)
+ ft_strlen_test_compare();
+}