У меня есть функция void insert, и я хочу проверить, правильно ли она вставляется. Я использую CMocka Framework для тестирования.
Я пытался сделать dpl_insert(ret, "mock_value")
вместо will_return()
, но, похоже, к списку не добавлено никакого значения.
t_list **dpl_create();
int ft_list_size(t_list *self);
void __wrap_dpl_insert(t_list **self, void *data)
{
check_expected(self);
check_expected(data);
}
static void test_dpl_insert_empty_list(void **state)
{
(void) state;
t_list **ret = dpl_create(); //Initialization of an empty struct.
int ret_size;
expect_value(__wrap_dpl_insert, self, ret);
expect_value(__wrap_dpl_insert, data, "mock_value");
will_return(__wrap_dpl_insert, XXX); //PROBLEM RESIDES HERE.
ret_size = ft_list_size(*ret);
fprintf(stderr, "Size of the list=>%d\n", ret_size);
}
При dpl_insert(ret, "mock_value")
fprintf()
печатает 0, как если бы ни один элемент не был добавлен.
Моя цель - получить 1 от fprintf()
.