diff options
Diffstat (limited to 'test/src')
| -rw-r--r-- | test/src/dstr/test_ft_dstrdestroy.c | 26 | ||||
| -rw-r--r-- | test/src/dstr/test_ft_dstrgrow.c | 52 | ||||
| -rw-r--r-- | test/src/dstr/test_ft_dstrinsert.c | 59 | ||||
| -rw-r--r-- | test/src/dstr/test_ft_dstrnew.c | 60 | ||||
| -rw-r--r-- | test/src/dstr/test_ft_dstrunwrap.c | 42 | ||||
| -rw-r--r-- | test/src/main.c | 7 | ||||
| -rw-r--r-- | test/src/runner/test_runner_dstr.c | 38 | ||||
| -rw-r--r-- | test/src/runner/test_runner_vec.c | 7 | ||||
| -rw-r--r-- | test/src/vec/test_ft_vecsort.c | 34 |
9 files changed, 324 insertions, 1 deletions
diff --git a/test/src/dstr/test_ft_dstrdestroy.c b/test/src/dstr/test_ft_dstrdestroy.c new file mode 100644 index 0000000..1a6cb41 --- /dev/null +++ b/test/src/dstr/test_ft_dstrdestroy.c @@ -0,0 +1,26 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_ft_dstrdestroy.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/01 19:41:59 by charles #+# #+# */ +/* Updated: 2020/04/04 21:04:51 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP(ft_dstrdestroy); + +TEST_SETUP(ft_dstrdestroy) +{} + +TEST_TEAR_DOWN(ft_dstrdestroy) +{} + +TEST(ft_dstrdestroy, basic) +{ + TEST_PASS(); +} diff --git a/test/src/dstr/test_ft_dstrgrow.c b/test/src/dstr/test_ft_dstrgrow.c new file mode 100644 index 0000000..1e3edb6 --- /dev/null +++ b/test/src/dstr/test_ft_dstrgrow.c @@ -0,0 +1,52 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_ft_dstrgrow.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/01 19:41:59 by charles #+# #+# */ +/* Updated: 2020/04/04 21:12:16 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP(ft_dstrgrow); + +TEST_SETUP(ft_dstrgrow) +{} + +TEST_TEAR_DOWN(ft_dstrgrow) +{} + +TEST(ft_dstrgrow, basic) +{ + t_ftdstr *dstr; + + dstr = ft_dstrnew("bonjour"); + TEST_ASSERT_NOT_NULL(ft_dstrgrow(dstr, 3)); + TEST_ASSERT_GREATER_OR_EQUAL(3, dstr->capacity - 1); + TEST_ASSERT_EQUAL_STRING("bonjour", dstr->str); + TEST_ASSERT_EQUAL(strlen("bonjour"), dstr->length); + + TEST_ASSERT_NOT_NULL(ft_dstrgrow(dstr, 16)); + TEST_ASSERT_GREATER_OR_EQUAL(16, dstr->capacity - 1); + TEST_ASSERT_EQUAL_STRING("bonjour", dstr->str); + TEST_ASSERT_EQUAL(strlen("bonjour"), dstr->length); + + TEST_ASSERT_NOT_NULL(ft_dstrgrow(dstr, 8)); + TEST_ASSERT_GREATER_OR_EQUAL(8, dstr->capacity - 1); + TEST_ASSERT_EQUAL_STRING("bonjour", dstr->str); + TEST_ASSERT_EQUAL(strlen("bonjour"), dstr->length); + + TEST_ASSERT_NOT_NULL(ft_dstrgrow(dstr, 20)); + TEST_ASSERT_GREATER_OR_EQUAL(20, dstr->capacity - 1); + TEST_ASSERT_EQUAL_STRING("bonjour", dstr->str); + TEST_ASSERT_EQUAL(strlen("bonjour"), dstr->length); + + TEST_ASSERT_NOT_NULL(ft_dstrgrow(dstr, 32)); + TEST_ASSERT_GREATER_OR_EQUAL(32, dstr->capacity - 1); + TEST_ASSERT_EQUAL_STRING("bonjour", dstr->str); + TEST_ASSERT_EQUAL(strlen("bonjour"), dstr->length); +} diff --git a/test/src/dstr/test_ft_dstrinsert.c b/test/src/dstr/test_ft_dstrinsert.c new file mode 100644 index 0000000..61f407c --- /dev/null +++ b/test/src/dstr/test_ft_dstrinsert.c @@ -0,0 +1,59 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_ft_dstrinsert.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/01 19:41:59 by charles #+# #+# */ +/* Updated: 2020/04/04 21:21:51 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP(ft_dstrinsert); + +TEST_SETUP(ft_dstrinsert) +{} + +TEST_TEAR_DOWN(ft_dstrinsert) +{} + +TEST(ft_dstrinsert, basic) +{ + t_ftdstr *dstr; + + dstr = ft_dstrnew(""); + + TEST_ASSERT_NULL(ft_dstrinsert(dstr, "", 1)); + TEST_ASSERT_NULL(ft_dstrinsert(dstr, "test", 1)); + TEST_ASSERT_NULL(ft_dstrinsert(dstr, "", 5)); + TEST_ASSERT_NULL(ft_dstrinsert(dstr, "test", 5)); + + TEST_ASSERT_NOT_NULL(ft_dstrinsert(dstr, "bonjour", 0)); + TEST_ASSERT_NOT_NULL(dstr->str); + TEST_ASSERT_EQUAL_STRING("bonjour", dstr->str); + TEST_ASSERT_EQUAL(strlen(dstr->str), dstr->length); + TEST_ASSERT_GREATER_THAN(strlen(dstr->str), dstr->capacity); + + TEST_ASSERT_NULL(ft_dstrinsert(dstr, "abc", 8)); + + TEST_ASSERT_NOT_NULL(ft_dstrinsert(dstr, "{{{", 0)); + TEST_ASSERT_NOT_NULL(dstr->str); + TEST_ASSERT_EQUAL_STRING("{{{bonjour", dstr->str); + TEST_ASSERT_EQUAL(strlen(dstr->str), dstr->length); + TEST_ASSERT_GREATER_THAN(strlen(dstr->str), dstr->capacity); + + TEST_ASSERT_NOT_NULL(ft_dstrinsert(dstr, "]]]", dstr->length)); + TEST_ASSERT_NOT_NULL(dstr->str); + TEST_ASSERT_EQUAL_STRING("{{{bonjour]]]", dstr->str); + TEST_ASSERT_EQUAL(strlen(dstr->str), dstr->length); + TEST_ASSERT_GREATER_THAN(strlen(dstr->str), dstr->capacity); + + TEST_ASSERT_NOT_NULL(ft_dstrinsert(dstr, "<>", 6)); + TEST_ASSERT_NOT_NULL(dstr->str); + TEST_ASSERT_EQUAL_STRING("{{{bon<>jour]]]", dstr->str); + TEST_ASSERT_EQUAL(strlen(dstr->str), dstr->length); + TEST_ASSERT_GREATER_THAN(strlen(dstr->str), dstr->capacity); +} diff --git a/test/src/dstr/test_ft_dstrnew.c b/test/src/dstr/test_ft_dstrnew.c new file mode 100644 index 0000000..33024e4 --- /dev/null +++ b/test/src/dstr/test_ft_dstrnew.c @@ -0,0 +1,60 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_ft_dstrnew.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/01 19:41:59 by charles #+# #+# */ +/* Updated: 2020/04/04 21:03:25 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP(ft_dstrnew); + +TEST_SETUP(ft_dstrnew) +{} + +TEST_TEAR_DOWN(ft_dstrnew) +{} + +TEST(ft_dstrnew, basic) +{ + t_ftdstr *dstr; + + dstr = ft_dstrnew(""); + TEST_ASSERT_NOT_NULL(dstr); + TEST_ASSERT_NOT_NULL(dstr->str); + TEST_ASSERT_EQUAL_STRING("", dstr->str); + TEST_ASSERT_EQUAL(1, dstr->capacity); + TEST_ASSERT_EQUAL(0, dstr->length); + ft_dstrdestroy(dstr); + + dstr = ft_dstrnew("abc"); + TEST_ASSERT_NOT_NULL(dstr); + TEST_ASSERT_NOT_NULL(dstr->str); + TEST_ASSERT_EQUAL_STRING("abc", dstr->str); + TEST_ASSERT_EQUAL(strlen("abc") + 1, dstr->capacity); + TEST_ASSERT_EQUAL(strlen("abc"), dstr->length); + ft_dstrdestroy(dstr); + + dstr = ft_dstrnew("hidden\0text"); + TEST_ASSERT_NOT_NULL(dstr); + TEST_ASSERT_NOT_NULL(dstr->str); + TEST_ASSERT_EQUAL_STRING("hidden\0text", dstr->str); + TEST_ASSERT_EQUAL(strlen("hidden") + 1, dstr->capacity); + TEST_ASSERT_EQUAL(strlen("hidden"), dstr->length); + ft_dstrdestroy(dstr); + + char *long_string = "asdkfjasl;asdjiojxocijioajsdfopijasdofijasiodfjaospidj"\ + "fopiasjdfoijasdopifjaspoidjfopiasjdfpoiajsdfoijd"; + dstr = ft_dstrnew(long_string); + TEST_ASSERT_NOT_NULL(dstr); + TEST_ASSERT_NOT_NULL(dstr->str); + TEST_ASSERT_EQUAL_STRING(long_string, dstr->str); + TEST_ASSERT_EQUAL(strlen(long_string) + 1, dstr->capacity); + TEST_ASSERT_EQUAL(strlen(long_string), dstr->length); + ft_dstrdestroy(dstr); +} diff --git a/test/src/dstr/test_ft_dstrunwrap.c b/test/src/dstr/test_ft_dstrunwrap.c new file mode 100644 index 0000000..dbc334a --- /dev/null +++ b/test/src/dstr/test_ft_dstrunwrap.c @@ -0,0 +1,42 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_ft_dstrunwrap.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/01 19:41:59 by charles #+# #+# */ +/* Updated: 2020/04/04 21:07:16 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP(ft_dstrunwrap); + +TEST_SETUP(ft_dstrunwrap) +{} + +TEST_TEAR_DOWN(ft_dstrunwrap) +{} + +TEST(ft_dstrunwrap, basic) +{ + t_ftdstr *dstr; + char *ret; + + dstr = ft_dstrnew("bonjour"); + ret = ft_dstrunwrap(dstr); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("bonjour", ret); + + dstr = ft_dstrnew(""); + ret = ft_dstrunwrap(dstr); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("", ret); + + dstr = ft_dstrnew("hidden\0text"); + ret = ft_dstrunwrap(dstr); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("hidden", ret); +} diff --git a/test/src/main.c b/test/src/main.c index b9e8bf7..7bac44b 100644 --- a/test/src/main.c +++ b/test/src/main.c @@ -79,8 +79,15 @@ static void run_all_test(void) RUN_TEST_GROUP(ft_vecpush); RUN_TEST_GROUP(ft_vecremove); RUN_TEST_GROUP(ft_vecinsert); + + RUN_TEST_GROUP(ft_dstrdestroy); + RUN_TEST_GROUP(ft_dstrgrow); + RUN_TEST_GROUP(ft_dstrinsert); + RUN_TEST_GROUP(ft_dstrnew); + RUN_TEST_GROUP(ft_dstrunwrap); } + int main(int argc, const char **argv) { return UnityMain(argc, argv, run_all_test); diff --git a/test/src/runner/test_runner_dstr.c b/test/src/runner/test_runner_dstr.c new file mode 100644 index 0000000..0c20048 --- /dev/null +++ b/test/src/runner/test_runner_dstr.c @@ -0,0 +1,38 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_runner_dstr.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/04 20:44:42 by charles #+# #+# */ +/* Updated: 2020/04/04 20:47:33 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP_RUNNER(ft_dstrdestroy) +{ + RUN_TEST_CASE(ft_dstrdestroy, basic); +} + +TEST_GROUP_RUNNER(ft_dstrgrow) +{ + RUN_TEST_CASE(ft_dstrgrow, basic); +} + +TEST_GROUP_RUNNER(ft_dstrinsert) +{ + RUN_TEST_CASE(ft_dstrinsert, basic); +} + +TEST_GROUP_RUNNER(ft_dstrnew) +{ + RUN_TEST_CASE(ft_dstrnew, basic); +} + +TEST_GROUP_RUNNER(ft_dstrunwrap) +{ + RUN_TEST_CASE(ft_dstrunwrap, basic); +} diff --git a/test/src/runner/test_runner_vec.c b/test/src/runner/test_runner_vec.c index e084742..c393bfa 100644 --- a/test/src/runner/test_runner_vec.c +++ b/test/src/runner/test_runner_vec.c @@ -6,7 +6,7 @@ /* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/04/01 19:55:53 by charles #+# #+# */ -/* Updated: 2020/04/02 11:01:36 by charles ### ########.fr */ +/* Updated: 2020/04/04 19:36:41 by charles ### ########.fr */ /* */ /* ************************************************************************** */ @@ -52,3 +52,8 @@ TEST_GROUP_RUNNER(ft_vecinsert) { RUN_TEST_CASE(ft_vecinsert, basic); } + +TEST_GROUP_RUNNER(ft_vecsort) +{ + RUN_TEST_CASE(ft_vecsort, basic); +} diff --git a/test/src/vec/test_ft_vecsort.c b/test/src/vec/test_ft_vecsort.c new file mode 100644 index 0000000..bfdad01 --- /dev/null +++ b/test/src/vec/test_ft_vecsort.c @@ -0,0 +1,34 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_ft_vecsort.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/04 19:31:13 by charles #+# #+# */ +/* Updated: 2020/04/04 19:45:27 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP(ft_vecsort); + +TEST_SETUP(ft_vecsort) +{} + +TEST_TEAR_DOWN(ft_vecsort) +{} + +TEST(ft_vecsort, basic) +{ + t_ftvec *vec = ft_vecnew(1); + char* arr[] = {"bonjour", "je", "suis", "lala", "z", "b"}; + char* sorted[] = {"bonjour", "je", "suis", "lala", "z", "b"}; + + for (size_t i = 0; i < sizeof(arr) / sizeof(char*); i++) + ft_vecpush(vec, arr[i]); + ft_vecsort(vec, ft_compar_str); + ft_qsort(sorted, sizeof(sorted) / sizeof(char*), sizeof(char*), ft_compar_str); + TEST_ASSERT_EQUAL_STRING_ARRAY(sorted, vec->data, vec->size); +} |
