diff options
Diffstat (limited to 'test/src')
| -rw-r--r-- | test/src/main.c | 2 | ||||
| -rw-r--r-- | test/src/runner/test_runner_str.c | 10 | ||||
| -rw-r--r-- | test/src/str/test_ft_strsub.c | 54 | ||||
| -rw-r--r-- | test/src/str/test_ft_strsubf.c | 61 |
4 files changed, 127 insertions, 0 deletions
diff --git a/test/src/main.c b/test/src/main.c index ea2865b..e962577 100644 --- a/test/src/main.c +++ b/test/src/main.c @@ -32,6 +32,8 @@ static void run_all_test(void) RUN_TEST_GROUP(ft_fnmatch); RUN_TEST_GROUP(ft_strsjoin); RUN_TEST_GROUP(ft_strsjoinf); + RUN_TEST_GROUP(ft_strsub); + RUN_TEST_GROUP(ft_strsubf); // ht RUN_TEST_GROUP(ft_htentry_new); diff --git a/test/src/runner/test_runner_str.c b/test/src/runner/test_runner_str.c index a6c0da8..8d3b68a 100644 --- a/test/src/runner/test_runner_str.c +++ b/test/src/runner/test_runner_str.c @@ -19,3 +19,13 @@ TEST_GROUP_RUNNER(ft_strsjoinf) { RUN_TEST_CASE(ft_strsjoinf, basic); } + +TEST_GROUP_RUNNER(ft_strsub) +{ + RUN_TEST_CASE(ft_strsub, basic); +} + +TEST_GROUP_RUNNER(ft_strsubf) +{ + RUN_TEST_CASE(ft_strsubf, basic); +} diff --git a/test/src/str/test_ft_strsub.c b/test/src/str/test_ft_strsub.c new file mode 100644 index 0000000..91ab4d3 --- /dev/null +++ b/test/src/str/test_ft_strsub.c @@ -0,0 +1,54 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_ft_strsub.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/01 19:41:59 by charles #+# #+# */ +/* Updated: 2020/04/05 14:02:11 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP(ft_strsub); + +TEST_SETUP(ft_strsub) +{} + +TEST_TEAR_DOWN(ft_strsub) +{} + +TEST(ft_strsub, basic) +{ + char *s = "[test]"; + char *ret; + + ret = ft_strsub(s, 0, strlen(s)); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("[test]", ret); + free(ret); + + ret = ft_strsub(s, 1, strlen(s) - 2); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("test", ret); + free(ret); + + ret = ft_strsub(s, strlen(s) - 4, 100); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("est]", ret); + free(ret); + + ret = ft_strsub(s, 3, 100); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("st]", ret); + free(ret); + + ret = ft_strsub(s, strlen(s), 100); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("", ret); + free(ret); + + TEST_ASSERT_NULL(ft_strsub(s, strlen(s) + 1, 1)); +} diff --git a/test/src/str/test_ft_strsubf.c b/test/src/str/test_ft_strsubf.c new file mode 100644 index 0000000..827c849 --- /dev/null +++ b/test/src/str/test_ft_strsubf.c @@ -0,0 +1,61 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* test_ft_strsubf.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles <charles.cabergs@gmail.com> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/04/01 19:41:59 by charles #+# #+# */ +/* Updated: 2020/04/05 14:03:20 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft_test.h" + +TEST_GROUP(ft_strsubf); + +TEST_SETUP(ft_strsubf) +{} + +TEST_TEAR_DOWN(ft_strsubf) +{} + +TEST(ft_strsubf, basic) +{ + char *orig = "[test]"; + char *s; + char *ret; + + s = strdup(orig); + ret = ft_strsub(s, 0, strlen(s)); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("[test]", ret); + free(ret); + + s = strdup(orig); + ret = ft_strsub(s, 1, strlen(s) - 2); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("test", ret); + free(ret); + + s = strdup(orig); + ret = ft_strsub(s, strlen(s) - 4, 100); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("est]", ret); + free(ret); + + s = strdup(orig); + ret = ft_strsub(s, 3, 100); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("st]", ret); + free(ret); + + s = strdup(orig); + ret = ft_strsub(s, strlen(s), 100); + TEST_ASSERT_NOT_NULL(ret); + TEST_ASSERT_EQUAL_STRING("", ret); + free(ret); + + s = strdup(orig); + TEST_ASSERT_NULL(ft_strsub(s, strlen(s) + 1, 1)); +} |
