aboutsummaryrefslogtreecommitdiff
path: root/test/ft_list_size_test.c
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-02-06 00:28:25 +0100
committerCharles <sircharlesaze@gmail.com>2020-02-06 00:28:25 +0100
commit88f29720d2a09eaef81ad3646169d6bc19be8bfb (patch)
treef7bcea07a8a7e4076c1817609c4a60d7e8213066 /test/ft_list_size_test.c
parent1ab2fedd108b26c9624454a897e2c518aaff7d32 (diff)
downloadlibasm_test-88f29720d2a09eaef81ad3646169d6bc19be8bfb.tar.gz
libasm_test-88f29720d2a09eaef81ad3646169d6bc19be8bfb.tar.bz2
libasm_test-88f29720d2a09eaef81ad3646169d6bc19be8bfb.zip
Added ft_list_size and ft_list_push_front test
Diffstat (limited to 'test/ft_list_size_test.c')
-rw-r--r--test/ft_list_size_test.c44
1 files changed, 41 insertions, 3 deletions
diff --git a/test/ft_list_size_test.c b/test/ft_list_size_test.c
index 80394d7..5c36095 100644
--- a/test/ft_list_size_test.c
+++ b/test/ft_list_size_test.c
@@ -1,17 +1,55 @@
#include "libasm_test.h"
+static t_list *tmp;
+static int expected;
+static int actual;
+
+#define FT_LIST_SIZE_EXPECT(fmt) do { \
+ tmp = list_from_format(fmt); \
+ expected = ref_ft_list_size(tmp); \
+ actual = ft_list_size(tmp); \
+ if (expected != actual) { \
+ printf("KO: [COMPARE]: %s: expected: %d ", \
+ test_name, expected); \
+ list_print(tmp); \
+ printf(" got: %d\n", actual); \
+ } else \
+ print_ok(); \
+ list_destroy(tmp); \
+} while (0);
+
static void
ft_list_size_segfault(void)
{
-
+ TEST_ASM_FUNCTION(tmp = list_from_format(""); ft_list_size(tmp); list_destroy(tmp));
+ TEST_ASM_FUNCTION(tmp = list_from_format("1 2 3"); ft_list_size(tmp); list_destroy(tmp));
+ TEST_ASM_FUNCTION(tmp = list_from_format("1 2 3 4 10"); ft_list_size(tmp); list_destroy(tmp));
+ TEST_ASM_FUNCTION(tmp = list_from_format("111234 1234 1112"); ft_list_size(tmp); list_destroy(tmp));
+ TEST_ASM_FUNCTION(tmp = list_from_format("1 2"); ft_list_size(tmp); list_destroy(tmp));
+ TEST_ASM_FUNCTION(
+ tmp = list_from_format("1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20");
+ ft_list_size(tmp);
+ list_destroy(tmp)
+ );
}
+
static void
ft_list_size_compare(void)
{
-
+ FT_LIST_SIZE_EXPECT("1 2 3");
+ FT_LIST_SIZE_EXPECT("");
+ FT_LIST_SIZE_EXPECT("1 2 3 4 10");
+ FT_LIST_SIZE_EXPECT("19879 123 12344");
+ FT_LIST_SIZE_EXPECT("1");
+ FT_LIST_SIZE_EXPECT("1 2");
+ FT_LIST_SIZE_EXPECT("1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20");
}
+
void
ft_list_size_test(void)
{
-
+ test_name = "ft_list_size.s";
+ ft_list_size_segfault();
+ if (!signaled)
+ ft_list_size_compare();
}