X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=extras%2Flibmemif%2Ftest%2Fmain_test.c;h=0a8e091f395c965a54576e2ad696f2662b66cf2a;hb=12df497bb6b7f60513f48c0dacca9ad99d717192;hp=b7705c4be1ad9456b711cd7ebcb17b7a358fbbcc;hpb=c62a63dd05bd815cd9ea399140cb6fc50a584132;p=vpp.git diff --git a/extras/libmemif/test/main_test.c b/extras/libmemif/test/main_test.c index b7705c4be1a..0a8e091f395 100644 --- a/extras/libmemif/test/main_test.c +++ b/extras/libmemif/test/main_test.c @@ -65,7 +65,8 @@ START_TEST (test_init) int err; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); libmemif_main_t *lm = &libmemif_main; @@ -84,7 +85,8 @@ START_TEST (test_init_epoll) { int err; - if ((err = memif_init (NULL, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + if ((err = + memif_init (NULL, TEST_APP_NAME, NULL, NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); libmemif_main_t *lm = &libmemif_main; @@ -110,12 +112,11 @@ START_TEST (test_create) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -146,9 +147,7 @@ START_TEST (test_create) ck_assert_ptr_ne (c->on_disconnect, NULL); ck_assert_ptr_ne (c->on_interrupt, NULL); - ck_assert_str_eq (c->args.interface_name, args.interface_name); - ck_assert_str_eq (c->args.instance_name, args.instance_name); - ck_assert_str_eq (c->args.socket_filename, SOCKET_FILENAME); + ck_assert_str_eq ((char *)c->args.interface_name, (char *)args.interface_name); struct itimerspec timer; timerfd_gettime (lm->timerfd, &timer); @@ -173,15 +172,12 @@ START_TEST (test_create_master) memset (&args, 0, sizeof (args)); args.is_master = 1; - libmemif_main_t *lm = &libmemif_main; - if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -212,9 +208,7 @@ START_TEST (test_create_master) ck_assert_ptr_ne (c->on_disconnect, NULL); ck_assert_ptr_ne (c->on_interrupt, NULL); - ck_assert_str_eq (c->args.interface_name, args.interface_name); - ck_assert_str_eq (c->args.instance_name, args.instance_name); - ck_assert_str_eq (c->args.socket_filename, SOCKET_FILENAME); + ck_assert_str_eq ((char *)c->args.interface_name, (char *)args.interface_name); struct stat file_stat; @@ -239,12 +233,11 @@ START_TEST (test_create_mult) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -299,12 +292,8 @@ START_TEST (test_create_mult) ck_assert_ptr_ne (c1->on_disconnect, NULL); ck_assert_ptr_ne (c1->on_interrupt, NULL); - ck_assert_str_eq (c->args.interface_name, args.interface_name); - ck_assert_str_eq (c->args.instance_name, args.instance_name); - ck_assert_str_eq (c->args.socket_filename, SOCKET_FILENAME); - ck_assert_str_eq (c1->args.interface_name, args.interface_name); - ck_assert_str_eq (c1->args.instance_name, args.instance_name); - ck_assert_str_eq (c1->args.socket_filename, SOCKET_FILENAME); + ck_assert_str_eq ((char *)c->args.interface_name, (char *)args.interface_name); + ck_assert_str_eq ((char *)c1->args.interface_name, (char *)args.interface_name); struct itimerspec timer; timerfd_gettime (lm->timerfd, &timer); @@ -334,12 +323,11 @@ START_TEST (test_control_fd_handler) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -406,12 +394,11 @@ START_TEST (test_buffer_alloc) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -437,12 +424,13 @@ START_TEST (test_buffer_alloc) qid = 0; if ((err = memif_buffer_alloc (conn, qid, bufs, max_buf, - &buf, 0)) != MEMIF_ERR_SUCCESS) + &buf, + MEMIF_DEFAULT_BUFFER_SIZE)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); ck_assert_uint_eq (buf, max_buf); for (i = 0; i < max_buf; i++) - ck_assert_uint_eq (bufs[i].buffer_len, MEMIF_DEFAULT_BUFFER_SIZE); + ck_assert_uint_eq (bufs[i].len, MEMIF_DEFAULT_BUFFER_SIZE); /* test buffer allocation qid 1 (positive) */ free (bufs); @@ -451,12 +439,13 @@ START_TEST (test_buffer_alloc) qid = 1; if ((err = memif_buffer_alloc (conn, qid, bufs, max_buf, - &buf, 0)) != MEMIF_ERR_SUCCESS) + &buf, + MEMIF_DEFAULT_BUFFER_SIZE)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); ck_assert_uint_eq (buf, max_buf); for (i = 0; i < max_buf; i++) - ck_assert_uint_eq (bufs[i].buffer_len, MEMIF_DEFAULT_BUFFER_SIZE); + ck_assert_uint_eq (bufs[i].len, MEMIF_DEFAULT_BUFFER_SIZE); /* test buffer allocation qid 2 (negative) */ @@ -466,7 +455,8 @@ START_TEST (test_buffer_alloc) qid = 2; if ((err = memif_buffer_alloc (conn, qid, bufs, max_buf, - &buf, 0)) != MEMIF_ERR_SUCCESS) + &buf, + MEMIF_DEFAULT_BUFFER_SIZE)) != MEMIF_ERR_SUCCESS) ck_assert_msg (err == MEMIF_ERR_QID, "err code: %u, err msg: %s", err, memif_strerror (err)); @@ -498,12 +488,11 @@ START_TEST (test_tx_burst) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -528,12 +517,13 @@ START_TEST (test_tx_burst) qid = 0; if ((err = memif_buffer_alloc (conn, qid, bufs, max_buf, - &buf, 0)) != MEMIF_ERR_SUCCESS) + &buf, + MEMIF_DEFAULT_BUFFER_SIZE)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); ck_assert_uint_eq (buf, max_buf); for (i = 0; i < max_buf; i++) - ck_assert_uint_eq (bufs[i].buffer_len, MEMIF_DEFAULT_BUFFER_SIZE); + ck_assert_uint_eq (bufs[i].len, MEMIF_DEFAULT_BUFFER_SIZE); if ((err = memif_tx_burst (conn, qid, bufs, max_buf, &tx)) != MEMIF_ERR_SUCCESS) @@ -549,12 +539,13 @@ START_TEST (test_tx_burst) qid = 1; if ((err = memif_buffer_alloc (conn, qid, bufs, max_buf, - &buf, 0)) != MEMIF_ERR_SUCCESS) + &buf, + MEMIF_DEFAULT_BUFFER_SIZE)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); ck_assert_uint_eq (buf, max_buf); for (i = 0; i < max_buf; i++) - ck_assert_uint_eq (bufs[i].buffer_len, MEMIF_DEFAULT_BUFFER_SIZE); + ck_assert_uint_eq (bufs[i].len, MEMIF_DEFAULT_BUFFER_SIZE); if ((err = memif_tx_burst (conn, qid, bufs, max_buf, &tx)) != MEMIF_ERR_SUCCESS) @@ -587,7 +578,7 @@ END_TEST START_TEST (test_rx_burst) { int err, i; - uint16_t max_buf = 10, buf, rx; + uint16_t max_buf = 10, rx; uint8_t qid; memif_buffer_t *bufs; memif_queue_t *mq; @@ -602,12 +593,11 @@ START_TEST (test_rx_burst) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -630,7 +620,7 @@ START_TEST (test_rx_burst) qid = 0; mq = &c->rx_queues[qid]; ring = mq->ring; - ring->head += max_buf; + ring->tail += max_buf; bufs = malloc (sizeof (memif_buffer_t) * max_buf); @@ -646,7 +636,7 @@ START_TEST (test_rx_burst) qid = 1; mq = &c->rx_queues[qid]; ring = mq->ring; - ring->head += max_buf; + ring->tail += max_buf; free (bufs); bufs = malloc (sizeof (memif_buffer_t) * max_buf); @@ -678,124 +668,6 @@ START_TEST (test_rx_burst) ck_assert_ptr_eq (conn, NULL); } -END_TEST -START_TEST (test_buffer_free) -{ - int err, i; - uint16_t max_buf = 10, buf, rx; - uint8_t qid; - memif_buffer_t *bufs; - memif_queue_t *mq; - memif_ring_t *ring; - ready_called = 0; - memif_conn_handle_t conn = NULL; - memif_conn_args_t args; - memset (&args, 0, sizeof (args)); - args.num_s2m_rings = 2; - args.num_m2s_rings = 2; - - libmemif_main_t *lm = &libmemif_main; - - if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) - ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); - - strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); - - if ((err = memif_create (&conn, &args, on_connect, - on_disconnect, on_interrupt, - NULL)) != MEMIF_ERR_SUCCESS) - ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); - - memif_connection_t *c = (memif_connection_t *) conn; - - c->run_args.num_s2m_rings = 2; - c->run_args.num_m2s_rings = 2; - c->run_args.log2_ring_size = 10; - c->run_args.buffer_size = 2048; - - if ((err = memif_init_regions_and_queues (c)) != MEMIF_ERR_SUCCESS) - ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); - - c->fd = 69; - - /* test buffer free qid 0 (positive) */ - qid = 0; - mq = &c->rx_queues[qid]; - ring = mq->ring; - ring->head += 10; - - bufs = malloc (sizeof (memif_buffer_t) * max_buf); - - if ((err = - memif_rx_burst (conn, qid, bufs, max_buf, &rx)) != MEMIF_ERR_SUCCESS) - ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); - - ck_assert_uint_eq (rx, max_buf); - for (i = 0; i < max_buf; i++) - ck_assert_ptr_ne (bufs[i].data, NULL); - - if ((err = - memif_buffer_free (conn, qid, bufs, max_buf, - &buf)) != MEMIF_ERR_SUCCESS) - ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); - - ck_assert_uint_eq (buf, max_buf); - for (i = 0; i < max_buf; i++) - ck_assert_ptr_eq (bufs[i].data, NULL); - ck_assert_uint_eq (ring->head, ring->tail); - - /* test buffer free qid 1 (positive) */ - qid = 1; - mq = &c->rx_queues[qid]; - ring = mq->ring; - ring->head += 10; - - free (bufs); - bufs = malloc (sizeof (memif_buffer_t) * max_buf); - - if ((err = - memif_rx_burst (conn, qid, bufs, max_buf, &rx)) != MEMIF_ERR_SUCCESS) - ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); - - ck_assert_uint_eq (rx, max_buf); - for (i = 0; i < max_buf; i++) - ck_assert_ptr_ne (bufs[i].data, NULL); - - if ((err = - memif_buffer_free (conn, qid, bufs, max_buf, - &buf)) != MEMIF_ERR_SUCCESS) - ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); - - ck_assert_uint_eq (buf, max_buf); - for (i = 0; i < max_buf; i++) - ck_assert_ptr_eq (bufs[i].data, NULL); - ck_assert_uint_eq (ring->head, ring->tail); - - - /* test buffer free qid 2 (negative) */ - qid = 2; - free (bufs); - bufs = malloc (sizeof (memif_buffer_t) * max_buf); - - if ((err = - memif_buffer_free (conn, qid, bufs, max_buf, - &buf)) != MEMIF_ERR_SUCCESS) - ck_assert_msg (err == MEMIF_ERR_QID, "err code: %u, err msg: %s", err, - memif_strerror (err)); - - if (lm->timerfd > 0) - close (lm->timerfd); - lm->timerfd = -1; - free (bufs); - bufs = NULL; - - memif_delete (&conn); - ck_assert_ptr_eq (conn, NULL); -} - END_TEST START_TEST (test_get_details) { @@ -810,12 +682,11 @@ START_TEST (test_get_details) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -841,12 +712,10 @@ START_TEST (test_get_details) if ((err = memif_get_details (conn, &md, buf, buflen)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); - ck_assert_str_eq (md.if_name, c->args.interface_name); - ck_assert_str_eq (md.inst_name, c->args.instance_name); - ck_assert_str_eq (md.remote_if_name, c->remote_if_name); - ck_assert_str_eq (md.remote_inst_name, c->remote_name); - ck_assert_str_eq (md.secret, c->args.secret); - ck_assert_str_eq (md.socket_filename, c->args.socket_filename); + ck_assert_str_eq ((char *)md.if_name, (char *)c->args.interface_name); + ck_assert_str_eq ((char *)md.remote_if_name, (char *)c->remote_if_name); + ck_assert_str_eq ((char *)md.remote_inst_name, (char *)c->remote_name); + ck_assert_str_eq ((char *)md.secret, (char *)c->args.secret); ck_assert_uint_eq (md.id, c->args.interface_id); ck_assert_uint_ne (md.role, c->args.is_master); @@ -889,12 +758,11 @@ START_TEST (test_init_regions_and_queues) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -915,7 +783,7 @@ START_TEST (test_init_regions_and_queues) ck_assert_ptr_ne (c->tx_queues, NULL); ck_assert_ptr_ne (c->rx_queues, NULL); - ck_assert_ptr_ne (c->regions->shm, NULL); + ck_assert_ptr_ne (c->regions->addr, NULL); ck_assert_ptr_ne (c->tx_queues->ring, NULL); ck_assert_ptr_ne (c->rx_queues->ring, NULL); @@ -945,12 +813,11 @@ START_TEST (test_connect1) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -992,12 +859,11 @@ START_TEST (test_disconnect_internal) libmemif_main_t *lm = &libmemif_main; if ((err = - memif_init (control_fd_update, TEST_APP_NAME)) != MEMIF_ERR_SUCCESS) + memif_init (control_fd_update, TEST_APP_NAME, NULL, + NULL, NULL)) != MEMIF_ERR_SUCCESS) ck_abort_msg ("err code: %u, err msg: %s", err, memif_strerror (err)); strncpy ((char *) args.interface_name, TEST_IF_NAME, strlen (TEST_IF_NAME)); - strncpy ((char *) args.instance_name, TEST_APP_NAME, - strlen (TEST_APP_NAME)); if ((err = memif_create (&conn, &args, on_connect, on_disconnect, on_interrupt, @@ -1038,7 +904,8 @@ START_TEST (test_disconnect_internal) ck_assert_ptr_eq (conn, NULL); } -END_TEST Suite * main_suite () +END_TEST Suite * +main_suite () { Suite *s; @@ -1060,7 +927,6 @@ END_TEST Suite * main_suite () tcase_add_test (tc_api, test_buffer_alloc); tcase_add_test (tc_api, test_tx_burst); tcase_add_test (tc_api, test_rx_burst); - tcase_add_test (tc_api, test_buffer_free); tcase_add_test (tc_api, test_get_details); /* create internal test case */