/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* test_cmdgroup_parsing.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: khais +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/03/11 17:30/41 by khais #+# #+# */ /* Updated: 2025/03/11 17:30:41 by khais ### ########.fr */ /* */ /* ************************************************************************** */ #include "testutil.h" #include #include "libft.h" #include "../src/parser/cmdgroup/cmdgroup.h" #include "../src/parser/cmdgroup/cmdgroup_item.h" static void test_cmdgroup_parsing_empty(void) { t_cmdgroup *cmd; // arange ft_dprintf(STDERR_FILENO, "==> %s <==\n", __FUNCTION__); cmd = parse_cmdgroup(""); // assert assert(NULL == cmd); // cleanup cmdgroup_destroy(cmd); do_leak_check(); } static void test_cmdgroup_parsing_single_cmdlist(void) { t_cmdgroup *cmd; // arange ft_dprintf(STDERR_FILENO, "==> %s <==\n", __FUNCTION__); cmd = parse_cmdgroup("echo this | cat -e && echo works | wc -c"); // assert assert(NULL != cmd); assert(1 == cmd->item_num); assert(TYPE_LIST == cmd->items[0].type); assert_cmdgroup_itemlistequal("echo this | cat -e && echo works | wc -c", cmd, 0); // cleanup cmdgroup_destroy(cmd); do_leak_check(); } int main(void) { test_cmdgroup_parsing_empty(); test_cmdgroup_parsing_single_cmdlist(); // redirections return (0); }