diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index c29cfa0..134d0de 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -2,8 +2,8 @@ # gmock_marsio ############################################################################### -add_library(gmock_marsio marsio.cpp) -target_include_directories(gmock_marsio PUBLIC ${CMAKE_CURRENT_LIST_DIR}) +add_library(gmock_marsio gmock_marsio.cpp) +target_include_directories(gmock_marsio PUBLIC /opt/mrzcpd/include) ############################################################################### # temp_platform diff --git a/test/marsio.cpp b/test/gmock_marsio.cpp similarity index 99% rename from test/marsio.cpp rename to test/gmock_marsio.cpp index c58e61e..40992eb 100644 --- a/test/marsio.cpp +++ b/test/gmock_marsio.cpp @@ -2,7 +2,6 @@ #include #include #include - #include "marsio.h" struct mr_instance diff --git a/test/gtest_utils.h b/test/gtest_utils.h index cc214f5..73dac58 100644 --- a/test/gtest_utils.h +++ b/test/gtest_utils.h @@ -18,6 +18,14 @@ extern "C" #include "health_check.h" #include "global_metrics.h" +// new add, only for gtest +extern void marsio_set_recv_mbuff(struct mr_instance *instance, marsio_buff_t *mbuff); +extern void marsio_set_send_mbuff(struct mr_instance *instance, marsio_buff_t *mbuff); +extern marsio_buff_t *marsio_get_recv_mbuff(struct mr_instance *instance); +extern marsio_buff_t *marsio_get_send_mbuff(struct mr_instance *instance); +extern int marsio_mbuff_cmp(marsio_buff_t *mbuff1, marsio_buff_t *mbuff2); +extern marsio_buff_t *marsio_mbuff_dup(marsio_buff_t *m); + #define set_metadata(meta, id, offset, is_ctrl, is_decrypt) \ { \ memset(&meta, 0, sizeof(meta)); \ diff --git a/test/marsio.h b/test/marsio.h deleted file mode 100644 index 9c522f6..0000000 --- a/test/marsio.h +++ /dev/null @@ -1,114 +0,0 @@ -#ifndef _MARSIO_H -#define _MARSIO_H - -#ifdef __cpluscplus -extern "C" -{ -#endif - -#include - -#ifndef MARSIO_SOCKET_ID_ANY -#define MARSIO_SOCKET_ID_ANY -1 -#endif - -#ifndef MARSIO_LCORE_ID_ANY -#define MARSIO_LCORE_ID_ANY -1 -#endif - -#define MR_SID_LIST_MAXLEN 8 - -typedef uint16_t sid_t; -typedef uint32_t queue_id_t; -typedef void marsio_buff_t; - -typedef enum -{ - MARSIO_OPT_THREAD_NUM, - MARSIO_OPT_THREAD_MASK, - MARSIO_OPT_THREAD_AFFINITY_MODE, - MARSIO_OPT_EXIT_WHEN_ERR, - MARSIO_OPT_THREAD_MASK_IN_CPUSET, -} marsio_opt_type_t; - -enum mr_buff_metadata_type -{ - MR_BUFF_REHASH_INDEX = 0, - MR_BUFF_METADATA_VLAN_TCI = 1, - MR_BUFF_ROUTE_CTX = 2, - MR_BUFF_SESSION_ID = 3, - MR_BUFF_DIR = 4, - MR_BUFF_PAYLOAD_OFFSET = 5, - MR_BUFF_USER_0 = 254, -}; - -typedef enum -{ - /* 发送后不释放数据包,由应用自行释放数据包 */ - MARSIO_SEND_OPT_NO_FREE = 1 << 0, - /* 发送时计算发包哈希值,用于分流 */ - MARSIO_SEND_OPT_REHASH = 1 << 1, - /* 快速报文路径 */ - MARSIO_SEND_OPT_FAST = 1 << 2, - /* 报文追踪标记 */ - MARSIO_SEND_OPT_TRACE = 1 << 3, - /* 控制报文标记 */ - MARSIO_SEND_OPT_CTRL = 1 << 4 - -} marsio_opt_send_t; - -struct mr_instance *marsio_create(); -int marsio_destory(struct mr_instance *instance); - -struct mr_vdev *marsio_open_device(struct mr_instance *instance, const char *devsym, unsigned int nr_rxstream, unsigned int nr_txstream); -void marsio_close_device(struct mr_vdev *vdev); - -void marsio_get_device_ether_addr(struct mr_vdev *vdev, void *str_ether_addr, uint8_t size); - -struct mr_sendpath *marsio_sendpath_create_by_vdev(struct mr_vdev *dest_device); -void marsio_sendpath_destory(struct mr_sendpath *sendpath); - -int marsio_init(struct mr_instance *instance, const char *appsym); -int marsio_option_set(struct mr_instance *instance, marsio_opt_type_t opt_type, void *opt, size_t sz_opt); -int marsio_thread_init(struct mr_instance *instance); -int marsio_poll_wait(struct mr_instance *instance, struct mr_vdev *vdevs[], unsigned int nr_vdevs, unsigned int tid, int timeout); - -int marsio_buff_set_metadata(marsio_buff_t *m, enum mr_buff_metadata_type type, void *data, unsigned int sz_data); -int marsio_buff_get_metadata(marsio_buff_t *m, enum mr_buff_metadata_type type, void *data, unsigned int sz_data); - -int marsio_buff_set_sid_list(marsio_buff_t *m, sid_t *slist, uint8_t sz_slist); -int marsio_buff_get_sid_list(marsio_buff_t *m, sid_t *out_slist, uint8_t sz_out_slist); - -int marsio_buff_malloc_global(struct mr_instance *instance, marsio_buff_t *marsio_buff[], unsigned int nr_mbufs, int socket_id, int thread_id); -void marsio_buff_free(struct mr_instance *instance, marsio_buff_t *marsio_buff[], unsigned int nr_mbufs, int socket_id, int thread_id); - -char *marsio_buff_mtod(marsio_buff_t *m); -uint32_t marsio_buff_datalen(marsio_buff_t *m); - -char *marsio_buff_adj(marsio_buff_t *m, uint16_t len); -char *marsio_buff_append(marsio_buff_t *m, uint16_t len); -char *marsio_buff_prepend(marsio_buff_t *m, uint16_t len); - -void marsio_buff_ctrlzone_reset(marsio_buff_t *m); - -int marsio_buff_is_ctrlbuf(marsio_buff_t *m); -void marsio_buff_set_ctrlbuf(marsio_buff_t *m); - -int marsio_recv_burst(struct mr_vdev *vdev, queue_id_t qid, marsio_buff_t *mbufs[], int nr_mbufs); -int marsio_send_burst(struct mr_sendpath *sendpath, queue_id_t qid, marsio_buff_t *mbufs[], int nr_mbufs); -int marsio_send_burst_with_options(struct mr_sendpath * sendpath, queue_id_t sid, marsio_buff_t * mbufs[], int nr_mbufs, uint16_t options); - -// new add, only for gtest -void marsio_set_recv_mbuff(struct mr_instance *instance, marsio_buff_t *mbuff); -void marsio_set_send_mbuff(struct mr_instance *instance, marsio_buff_t *mbuff); -marsio_buff_t *marsio_get_recv_mbuff(struct mr_instance *instance); -marsio_buff_t *marsio_get_send_mbuff(struct mr_instance *instance); - -int marsio_mbuff_cmp(marsio_buff_t *mbuff1, marsio_buff_t *mbuff2); -marsio_buff_t *marsio_mbuff_dup(marsio_buff_t *m); - -#ifdef __cpluscplus -} -#endif - -#endif