5
#define EFL_CORE_COMMAND_LINE_PROTECTED
9
#define EFL_NOLEGACY_API_SUPPORT
11
#include "efl_app_suite.h"
12
#include "../efl_check.h"
16
} Efl_App_Test_CML_Data;
18
#include "efl_app_test_cml.eo.h"
19
#include "efl_app_test_cml.eo.c"
24
Eina_Array *array = eina_array_new(16);
26
eina_array_push(array, eina_stringshare_add("/bin/sh"));
27
eina_array_push(array, eina_stringshare_add("-C"));
28
eina_array_push(array, eina_stringshare_add("foo"));
29
eina_array_push(array, eina_stringshare_add("--test"));
30
eina_array_push(array, eina_stringshare_add("--option=done"));
31
eina_array_push(array, eina_stringshare_add("--"));
32
eina_array_push(array, eina_stringshare_add("asdf --test"));
37
_construct_string(void)
39
return "/bin/sh -C foo --test --option=done -- \"asdf --test\"";
42
EFL_START_TEST(efl_core_cml_string)
44
Efl_App_Test_CML *cml = efl_add_ref(EFL_APP_TEST_CML_CLASS, NULL);
45
Eina_Array *content = _construct_array();
46
Eina_Stringshare *str;
50
b = efl_core_command_line_command_string_set(cml, _construct_string());
51
ck_assert_int_ne(b, 0);
53
EINA_ACCESSOR_FOREACH(efl_core_command_line_command_access(cml), i, str)
55
ck_assert_str_eq(eina_array_data_get(content, i), str);
57
ck_assert_str_eq(efl_core_command_line_command_get(cml), _construct_string());
61
EFL_START_TEST(efl_core_cml_array)
63
Efl_App_Test_CML *cml = efl_add_ref(EFL_APP_TEST_CML_CLASS, NULL);
64
Eina_Array *content1 = _construct_array();
65
Eina_Array *content2 = _construct_array();
66
Eina_Stringshare *str;
70
b = efl_core_command_line_command_array_set(cml, content1);
71
ck_assert_int_ne(b, 0);
73
EINA_ACCESSOR_FOREACH(efl_core_command_line_command_access(cml), i, str)
75
ck_assert_str_eq(eina_array_data_get(content2, i), str);
77
ck_assert_str_eq(efl_core_command_line_command_get(cml), _construct_string());
81
void efl_test_efl_cml(TCase *tc)
83
tcase_add_test(tc, efl_core_cml_string);
84
tcase_add_test(tc, efl_core_cml_array);