From 01b4cc91d1596cf94d709a627ed8ad64bc1e285d Mon Sep 17 00:00:00 2001 From: Charles Date: Sun, 16 Feb 2020 04:51:41 +0100 Subject: Filled lst* tests --- test/src/lst/test_ft_lstremove_if.c | 56 +++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) (limited to 'test/src/lst/test_ft_lstremove_if.c') diff --git a/test/src/lst/test_ft_lstremove_if.c b/test/src/lst/test_ft_lstremove_if.c index ef50e47..e32a262 100644 --- a/test/src/lst/test_ft_lstremove_if.c +++ b/test/src/lst/test_ft_lstremove_if.c @@ -10,5 +10,61 @@ TEST_TEAR_DOWN(ft_lstremove_if) TEST(ft_lstremove_if, basic) { + t_ftlst *lst = NULL; + int a = 1; + int b = 2; + int c = 3; + int d = 4; + ft_lstadd_back(&lst, ft_lstnew(&a)); + ft_lstadd_back(&lst, ft_lstnew(&b)); + ft_lstadd_back(&lst, ft_lstnew(&c)); + ft_lstadd_back(&lst, ft_lstnew(&d)); + ft_lstadd_back(&lst, ft_lstnew(&d)); + ft_lstadd_back(&lst, ft_lstnew(&d)); + ft_lstadd_back(&lst, ft_lstnew(&a)); + ft_lstadd_back(&lst, ft_lstnew(&a)); + + ft_lstremove_if(&lst, ft_compar_int, &a, NULL); + TEST_ASSERT_NOT_NULL(lst); + TEST_ASSERT_NOT_NULL(lst->next); + TEST_ASSERT_NOT_NULL(lst->next->next); + TEST_ASSERT_NOT_NULL(lst->next->next->next); + TEST_ASSERT_NOT_NULL(lst->next->next->next->next); + TEST_ASSERT_NOT_NULL(lst->content); + TEST_ASSERT_NOT_NULL(lst->next->content); + TEST_ASSERT_NOT_NULL(lst->next->next->content); + TEST_ASSERT_NOT_NULL(lst->next->next->next->content); + TEST_ASSERT_NOT_NULL(lst->next->next->next->next->content); + TEST_ASSERT_EQUAL(b, *(int*)lst->content); + TEST_ASSERT_EQUAL(c, *(int*)lst->next->content); + TEST_ASSERT_EQUAL(d, *(int*)lst->next->next->content); + TEST_ASSERT_EQUAL(d, *(int*)lst->next->next->next->content); + TEST_ASSERT_EQUAL(d, *(int*)lst->next->next->next->next->content); + + ft_lstremove_if(&lst, ft_compar_int, &b, NULL); + TEST_ASSERT_NOT_NULL(lst); + TEST_ASSERT_NOT_NULL(lst->next); + TEST_ASSERT_NOT_NULL(lst->next->next); + TEST_ASSERT_NOT_NULL(lst->next->next->next); + TEST_ASSERT_NOT_NULL(lst->content); + TEST_ASSERT_NOT_NULL(lst->next->content); + TEST_ASSERT_NOT_NULL(lst->next->next->content); + TEST_ASSERT_EQUAL(c, *(int*)lst->content); + TEST_ASSERT_EQUAL(d, *(int*)lst->next->content); + TEST_ASSERT_EQUAL(d, *(int*)lst->next->next->content); + TEST_ASSERT_EQUAL(d, *(int*)lst->next->next->next->content); + + ft_lstremove_if(&lst, ft_compar_int, &d, NULL); + TEST_ASSERT_NOT_NULL(lst); + TEST_ASSERT_NOT_NULL(lst->content); + TEST_ASSERT_EQUAL(c, *(int*)lst->content); + + ft_lstremove_if(&lst, ft_compar_int, &d, NULL); + TEST_ASSERT_NOT_NULL(lst); + TEST_ASSERT_NOT_NULL(lst->content); + TEST_ASSERT_EQUAL(c, *(int*)lst->content); + + ft_lstremove_if(&lst, ft_compar_int, &c, NULL); + TEST_ASSERT_NULL(lst); } -- cgit