55 #include <sys/resource.h> 
   56 #include <sys/types.h> 
   71 #include <amxc/amxc.h> 
   72 #include <amxp/amxp_signal.h> 
   73 #include <amxd/amxd_dm.h> 
   74 #include <amxd/amxd_object.h> 
   75 #include <amxd/amxd_parameter.h> 
   81 #include <amxc/amxc_macros.h> 
   83                                     UNUSED amxd_function_t* func,
 
   86     return amxd_status_ok;
 
   93     amxd_object_t* root = amxd_dm_get_root(dm);
 
   94     amxd_object_t* 
object = amxd_object_get_child(root, 
"TestObject");
 
   98     amxc_var_set_type(&args, AMXC_VAR_ID_HTABLE);
 
  100     assert_ptr_not_equal(
object, NULL);
 
  102     assert_int_equal(amxd_object_invoke_function(
object, 
"TestFunc1", &args, &ret), amxd_status_ok);
 
  103     assert_int_equal(amxd_object_invoke_function(
object, 
"TestFunc2", &args, &ret), amxd_status_ok);
 
  104     assert_int_equal(amxd_object_invoke_function(
object, 
"TestFunc3", &args, &ret), func3 ? amxd_status_ok : amxd_status_function_not_implemented);
 
  105     assert_int_equal(amxd_object_invoke_function(
object, 
"TestFunc4", &args, &ret), amxd_status_function_not_implemented);
 
  107     amxc_var_clean(&args);
 
  108     amxc_var_clean(&ret);
 
  115     amxd_object_t* root = amxd_dm_get_root(dm);
 
  116     amxd_object_t* 
object = amxd_object_get_child(root, 
"TestObject");
 
  118     amxc_var_init(&args);
 
  120     amxc_var_set_type(&args, AMXC_VAR_ID_HTABLE);
 
  122     assert_ptr_not_equal(
object, NULL);
 
  124     assert_int_equal(amxd_object_invoke_function(
object, 
"TestFunc1", &args, &ret), amxd_status_function_not_implemented);
 
  125     assert_int_equal(amxd_object_invoke_function(
object, 
"TestFunc2", &args, &ret), amxd_status_function_not_implemented);
 
  126     assert_int_equal(amxd_object_invoke_function(
object, 
"TestFunc3", &args, &ret), amxd_status_function_not_implemented);
 
  127     assert_int_equal(amxd_object_invoke_function(
object, 
"TestFunc4", &args, &ret), amxd_status_function_not_implemented);
 
  129     amxc_var_clean(&args);
 
  130     amxc_var_clean(&ret);
 
Ambiorix ODL parser header file.
void amxo_parser_clean(amxo_parser_t *parser)
Cleans up the odl parser instance.
int amxo_parser_parse_file(amxo_parser_t *parser, const char *file_path, amxd_object_t *object)
Parses an odl file.
static amxd_status_t amxo_parser_get_status(amxo_parser_t *parser)
Get the status of the odl parser.
int amxo_parser_init(amxo_parser_t *parser)
Initializes a new odl parser instance.
int amxo_resolver_ftab_add(amxo_parser_t *parser, const char *fn_name, amxo_fn_ptr_t fn)
Adds a C function to the function table.
int amxo_resolver_ftab_remove(amxo_parser_t *parser, const char *fn_name)
Removes a function from the function table.
void amxo_resolver_ftab_clear(amxo_parser_t *parser)
Removes all functions from the function table.
#define AMXO_FUNC(x)
Function ponter caster macro.
The ODL parser structure.
static amxd_status_t dm_method_impl(UNUSED amxd_object_t *object, UNUSED amxd_function_t *func, UNUSED amxc_var_t *args, UNUSED amxc_var_t *ret)
void test_ftab_resolver_invalid_args(UNUSED void **state)
static void check_can_invoke_functions(amxd_dm_t *dm, bool func3)
static void check_can_not_invoke_functions(amxd_dm_t *dm)
void test_ftab_resolver_resolves(UNUSED void **state)