void zbx_mock_test_entry(void **state)
zbx_mock_handle_t in_sql, expected_results, expected_result;
zbx_vector_uint64_t actual_results;
if (ZBX_MOCK_SUCCESS != (error = zbx_mock_in_parameter("sql", &in_sql)) ||
ZBX_MOCK_SUCCESS != (error = zbx_mock_string(in_sql, &sql)))
fail_msg("Cannot get SQL query from test case data: %s", zbx_mock_error_string(error));
if (ZBX_MOCK_SUCCESS != (error = zbx_mock_out_parameter("uint64", &expected_results)))
fail_msg("Cannot get expected results from test case data: %s", zbx_mock_error_string(error));
zbx_vector_uint64_create(&actual_results);
zbx_db_select_uint64(sql, &actual_results);
for (i = 0; ZBX_MOCK_SUCCESS == (error = zbx_mock_vector_element(expected_results, &expected_result)); i++)
const char *expected_result_string;
zbx_uint64_t expected_result_uint64;
if (ZBX_MOCK_SUCCESS != (error = zbx_mock_string(expected_result, &expected_result_string)))
if (SUCCEED != zbx_is_uint64(expected_result_string, &expected_result_uint64))
fail_msg("Cannot convert expected result #%d to unsigned 64 bit integer.", i + 1);
if (i >= actual_results.values_num)
fail_msg("There are fewer actual results (%d) than expected.", actual_results.values_num);
if (expected_result_uint64 != actual_results.values[i])
fail_msg("Unexpected result #%d: " ZBX_FS_UI64 " instead of " ZBX_FS_UI64 ".", i + 1,