64 #include <amxc/amxc.h>
65 #include <amxp/amxp_signal.h>
66 #include <amxp/amxp_slot.h>
86 amxc_var_set_type(&args, AMXC_VAR_ID_HTABLE);
94 assert_non_null(root);
97 assert_non_null(func);
99 amxc_var_add_key(cstring_t, &args,
"rel_path",
"MyRoot.");
102 amxc_var_dump(&ret, STDOUT_FILENO);
104 amxc_var_clean(&args);
105 amxc_var_clean(&ret);
117 amxc_var_init(&args);
118 amxc_var_set_type(&args, AMXC_VAR_ID_HTABLE);
126 assert_non_null(root);
129 assert_non_null(func);
131 amxc_var_add_key(cstring_t, &args,
"rel_path",
"MyRoot.");
132 amxc_var_add_key(cstring_t, &args,
"method",
"_get");
135 amxc_var_dump(&ret, STDOUT_FILENO);
137 amxc_var_clean(&args);
138 amxc_var_clean(&ret);
148 amxc_var_t* method_args = NULL;
151 amxc_var_init(&args);
152 amxc_var_set_type(&args, AMXC_VAR_ID_HTABLE);
160 assert_non_null(root);
163 assert_non_null(func);
165 amxc_var_add_key(cstring_t, &args,
"rel_path",
"Does.Not.Exists.");
166 amxc_var_add_key(cstring_t, &args,
"method",
"_get");
169 amxc_var_set_type(&args, AMXC_VAR_ID_HTABLE);
170 amxc_var_add_key(cstring_t, &args,
"rel_path",
"MyRoot.");
171 amxc_var_add_key(cstring_t, &args,
"method",
"_get");
172 method_args = amxc_var_add_key(amxc_htable_t, &args,
"args", NULL);
173 amxc_var_add_key(uint32_t, method_args,
"depth", 0);
175 amxc_var_dump(&ret, STDOUT_FILENO);
177 amxc_var_set_type(&args, AMXC_VAR_ID_HTABLE);
178 amxc_var_add_key(cstring_t, &args,
"method",
"_get");
179 method_args = amxc_var_add_key(amxc_htable_t, &args,
"args", NULL);
180 amxc_var_add_key(uint32_t, method_args,
"depth", 0);
183 amxc_var_clean(&args);
184 amxc_var_clean(&ret);
Ambiorix Data Model Default actions header file.
Ambiorix Data Model API header file.
Ambiorix Data Model RPC methods API header file.
Ambiorix Data Model API header file.
amxd_object_t * amxd_dm_get_root(amxd_dm_t *const dm)
Fetches the root object of the data model.
amxd_status_t amxd_dm_add_root_object(amxd_dm_t *const dm, amxd_object_t *const object)
Adds an object to the root of the data model.
amxd_status_t amxd_dm_init(amxd_dm_t *dm)
Initializes a data model structure.
void amxd_dm_clean(amxd_dm_t *dm)
Cleans a data model structure.
amxd_function_t * amxd_object_get_function(const amxd_object_t *const object, const char *name)
Get the definition of a RPC method from an object.
amxd_status_t amxd_object_invoke_function(amxd_object_t *const object, const char *func_name, amxc_var_t *const args, amxc_var_t *const ret)
Calls an object RPC method.
amxd_status_t amxd_object_new(amxd_object_t **object, const amxd_object_type_t type, const char *name)
Data model object constructor function.
void test_amxd_root_has_get_function(UNUSED void **state)
void test_amxd_root_has_exec_function(UNUSED void **state)
void test_amxd_exec_function_fails_when_rel_path_does_not_exists(UNUSED void **state)