diff options
| author | Charles Cabergs <me@cacharle.xyz> | 2020-08-02 11:05:33 +0200 |
|---|---|---|
| committer | Charles Cabergs <me@cacharle.xyz> | 2020-08-02 11:05:33 +0200 |
| commit | 5d2f925b20ceaea4122c59d2d2c4e7d4ae991fde (patch) | |
| tree | 80911dc3c32e9f230750e7e1042d413dfb6efab2 /test/src/vec/test_ft_veciter.c | |
| parent | ee32953ea79616e72f5428cdf40c834714a891c9 (diff) | |
| parent | b96b82194ccad2cddbb46b77aa1962a57c47ff44 (diff) | |
| download | libft-5d2f925b20ceaea4122c59d2d2c4e7d4ae991fde.tar.gz libft-5d2f925b20ceaea4122c59d2d2c4e7d4ae991fde.tar.bz2 libft-5d2f925b20ceaea4122c59d2d2c4e7d4ae991fde.zip | |
Merge branch 'master' into ft_ssl
Diffstat (limited to 'test/src/vec/test_ft_veciter.c')
| -rw-r--r-- | test/src/vec/test_ft_veciter.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/test/src/vec/test_ft_veciter.c b/test/src/vec/test_ft_veciter.c new file mode 100644 index 0000000..fac28c1 --- /dev/null +++ b/test/src/vec/test_ft_veciter.c @@ -0,0 +1,52 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_ft_veciter.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/01 19:41:59 by charles #+# #+# */ +/* Updated: 2020/04/01 20:20:41 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP(ft_veciter); + +TEST_SETUP(ft_veciter) +{} + +TEST_TEAR_DOWN(ft_veciter) +{} + +static void iter_func(void *x) +{ + *(int*)x = *(int*)x * *(int*)x; +} + +static void iter_func2(void *x) +{ + *(int*)x = *(int*)x - 100; +} + +TEST(ft_veciter, basic) +{ + int tmp[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; + t_ftvec *vec; + + vec = ft_vecnew(10); + TEST_ASSERT_NOT_NULL(vec); + TEST_ASSERT_NOT_NULL(vec->data); + for (int i = 0; i < 10; i++) + vec->data[i] = tmp + i; + vec->size = 10; + ft_veciter(vec, iter_func); + for (int i = 0; i < 10; i++) + TEST_ASSERT_EQUAL(i * i, *(int*)vec->data[i]); + ft_veciter(vec, iter_func2); + for (int i = 0; i < 10; i++) + TEST_ASSERT_EQUAL(i * i - 100, *(int*)vec->data[i]); + + ft_vecdestroy(vec, NULL); +} |
