From 47395db16988f4d48cfd379e4ce955c9826d42bd Mon Sep 17 00:00:00 2001 From: Christopher Collins Date: Tue, 12 Mar 2019 17:32:17 -0700 Subject: [PATCH] host tests: Don't use tu_suite_set_post_test_cb() This testutil function was deprecated by this PR: https://github.com/apache/mynewt-core/pull/1678 Instead, each test case needs to manually verify that all mbufs have been freed. This results in more code duplication, but automatically performing this verification was not right anyway. We do not want to perform this step if a test case aborted early (failed TEST_ASSERT_FATAL()). --- nimble/host/test/src/ble_att_clt_test.c | 30 ++++- nimble/host/test/src/ble_att_svr_test.c | 49 +++++-- nimble/host/test/src/ble_gap_test.c | 128 +++++++++++++++---- nimble/host/test/src/ble_gatt_conn_test.c | 6 +- nimble/host/test/src/ble_gatt_disc_c_test.c | 10 +- nimble/host/test/src/ble_gatt_disc_d_test.c | 6 +- nimble/host/test/src/ble_gatt_disc_s_test.c | 12 +- nimble/host/test/src/ble_gatt_find_s_test.c | 6 +- nimble/host/test/src/ble_gatt_read_test.c | 14 +- nimble/host/test/src/ble_gatt_write_test.c | 24 +++- nimble/host/test/src/ble_gatts_notify_test.c | 14 +- nimble/host/test/src/ble_gatts_read_test.c | 5 +- nimble/host/test/src/ble_gatts_reg_test.c | 14 +- nimble/host/test/src/ble_hs_adv_test.c | 8 +- nimble/host/test/src/ble_hs_conn_test.c | 8 +- nimble/host/test/src/ble_hs_hci_test.c | 10 +- nimble/host/test/src/ble_hs_id_test.c | 12 +- nimble/host/test/src/ble_hs_pvcy_test.c | 16 ++- nimble/host/test/src/ble_hs_stop_test.c | 5 +- nimble/host/test/src/ble_hs_test.c | 3 + nimble/host/test/src/ble_hs_test_util.c | 6 - nimble/host/test/src/ble_l2cap_test.c | 52 +++++++- nimble/host/test/src/ble_os_test.c | 8 +- nimble/host/test/src/ble_sm_lgcy_test.c | 14 +- nimble/host/test/src/ble_sm_sc_test.c | 30 ++++- nimble/host/test/src/ble_sm_test.c | 22 +++- nimble/host/test/src/ble_store_test.c | 12 +- nimble/host/test/src/ble_uuid_test.c | 4 +- 28 files changed, 442 insertions(+), 86 deletions(-) diff --git a/nimble/host/test/src/ble_att_clt_test.c b/nimble/host/test/src/ble_att_clt_test.c index 703ad00db..787d4bca3 100644 --- a/nimble/host/test/src/ble_att_clt_test.c +++ b/nimble/host/test/src/ble_att_clt_test.c @@ -79,6 +79,8 @@ TEST_CASE_SELF(ble_att_clt_test_tx_find_info) uint16_t conn_handle; int rc; + ble_hs_test_util_assert_mbufs_freed(NULL); + conn_handle = ble_att_clt_test_misc_init(); /*** Success. */ @@ -96,6 +98,8 @@ TEST_CASE_SELF(ble_att_clt_test_tx_find_info) /*** Success; start and end handles equal. */ rc = ble_att_clt_tx_find_info(conn_handle, 500, 500); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_rx_find_info) @@ -161,6 +165,8 @@ TEST_CASE_SELF(ble_att_clt_test_rx_find_info) rc = ble_hs_test_util_l2cap_rx_payload_flat(conn_handle, BLE_L2CAP_CID_ATT, buf, off); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } static void @@ -183,6 +189,8 @@ ble_att_clt_test_case_tx_write_req_or_cmd(int is_req) sizeof value300, is_req); ble_att_clt_test_misc_verify_tx_write(0xab83, value300, BLE_ATT_MTU_DFLT - 3, is_req); + + ble_hs_test_util_assert_mbufs_freed(NULL); } static void @@ -285,6 +293,8 @@ TEST_CASE_SELF(ble_att_clt_test_tx_read) /*** Error: handle of 0. */ rc = ble_att_clt_tx_read(conn_handle, 0); TEST_ASSERT(rc == BLE_HS_EINVAL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_rx_read) @@ -311,6 +321,8 @@ TEST_CASE_SELF(ble_att_clt_test_rx_read) rc = ble_hs_test_util_l2cap_rx_payload_flat(conn_handle, BLE_L2CAP_CID_ATT, buf, 1); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_tx_read_blob) @@ -327,6 +339,8 @@ TEST_CASE_SELF(ble_att_clt_test_tx_read_blob) /*** Error: handle of 0. */ rc = ble_att_clt_tx_read_blob(conn_handle, 0, 0); TEST_ASSERT(rc == BLE_HS_EINVAL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_rx_read_blob) @@ -353,6 +367,8 @@ TEST_CASE_SELF(ble_att_clt_test_rx_read_blob) rc = ble_hs_test_util_l2cap_rx_payload_flat(conn_handle, BLE_L2CAP_CID_ATT, buf, 1); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_tx_read_mult) @@ -378,6 +394,8 @@ TEST_CASE_SELF(ble_att_clt_test_tx_read_mult) /*** Error: no handles. */ rc = ble_att_clt_tx_read_mult(conn_handle, NULL, 0); TEST_ASSERT(rc == BLE_HS_EINVAL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_rx_read_mult) @@ -411,6 +429,8 @@ TEST_CASE_SELF(ble_att_clt_test_rx_read_mult) conn_handle, BLE_L2CAP_CID_ATT, buf, BLE_ATT_READ_MULT_RSP_BASE_SZ + 0); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_tx_prep_write) @@ -442,6 +462,8 @@ TEST_CASE_SELF(ble_att_clt_test_tx_prep_write) BLE_ATT_MTU_DFLT - BLE_ATT_PREP_WRITE_CMD_BASE_SZ + 1, BLE_HS_EINVAL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_rx_prep_write) @@ -470,6 +492,8 @@ TEST_CASE_SELF(ble_att_clt_test_rx_prep_write) rc = ble_hs_test_util_l2cap_rx_payload_flat( conn_handle, BLE_L2CAP_CID_ATT, buf, BLE_ATT_PREP_WRITE_CMD_BASE_SZ); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_tx_exec_write) @@ -486,6 +510,8 @@ TEST_CASE_SELF(ble_att_clt_test_tx_exec_write) /*** Success: nonzero == execute. */ rc = ble_att_clt_tx_exec_write(conn_handle, 0x02); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_att_clt_test_tx_mtu) @@ -500,12 +526,12 @@ TEST_CASE_SELF(ble_att_clt_test_tx_mtu) /*** Error: repeated sends. */ ble_att_clt_test_misc_tx_mtu(conn_handle, 50, BLE_HS_EALREADY); ble_att_clt_test_misc_tx_mtu(conn_handle, 60, BLE_HS_EALREADY); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_att_clt_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_att_clt_test_tx_find_info(); ble_att_clt_test_rx_find_info(); ble_att_clt_test_tx_read(); diff --git a/nimble/host/test/src/ble_att_svr_test.c b/nimble/host/test/src/ble_att_svr_test.c index d3489e75f..60ab14b4e 100644 --- a/nimble/host/test/src/ble_att_svr_test.c +++ b/nimble/host/test/src/ble_att_svr_test.c @@ -41,6 +41,19 @@ static uint16_t ble_att_svr_test_n_attr_handle; static uint8_t ble_att_svr_test_attr_n[1024]; static uint16_t ble_att_svr_test_attr_n_len; +static void +ble_att_svr_test_assert_mbufs_freed(void) +{ + /* When checking for mbuf leaks, ensure no stale prep entries. */ + static const struct ble_hs_test_util_mbuf_params mbuf_params = { + .prev_tx = 1, + .rx_queue = 1, + .prep_list = 0, + }; + + ble_hs_test_util_assert_mbufs_freed(&mbuf_params); +} + static int ble_att_svr_test_misc_gap_cb(struct ble_gap_event *event, void *arg) { @@ -794,6 +807,8 @@ TEST_CASE_SELF(ble_att_svr_test_mtu) /*** Mine higher than peer's. */ ble_att_svr_test_misc_mtu_exchange(100, 50, 50, 50); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_read) @@ -886,6 +901,8 @@ TEST_CASE_SELF(ble_att_svr_test_read) TEST_ASSERT(rc == 0); ble_hs_test_util_verify_tx_read_rsp(ble_att_svr_test_attr_r_1, BLE_ATT_MTU_DFLT - 1); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_read_blob) @@ -932,6 +949,8 @@ TEST_CASE_SELF(ble_att_svr_test_read_blob) TEST_ASSERT(rc == 0); ble_hs_test_util_verify_tx_read_blob_rsp(ble_att_svr_test_attr_r_1, 0); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_read_mult) @@ -1009,6 +1028,7 @@ TEST_CASE_SELF(ble_att_svr_test_read_mult) ble_att_svr_test_misc_verify_all_read_mult(conn_handle, attrs, 2); + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_write) @@ -1098,6 +1118,8 @@ TEST_CASE_SELF(ble_att_svr_test_write) attr_val, sizeof attr_val); TEST_ASSERT(rc == 0); ble_hs_test_util_verify_tx_write_rsp(); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_find_info) @@ -1201,6 +1223,7 @@ TEST_CASE_SELF(ble_att_svr_test_find_info) .handle = 0, } })); + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_find_type_value) @@ -1354,6 +1377,8 @@ TEST_CASE_SELF(ble_att_svr_test_find_type_value) }, { .first = 0, } })); + + ble_att_svr_test_assert_mbufs_freed(); } static void @@ -1489,12 +1514,15 @@ ble_att_svr_test_misc_read_type(uint16_t mtu) .handle = 0, } })); + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_read_type) { ble_att_svr_test_misc_read_type(0); ble_att_svr_test_misc_read_type(128); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_read_group_type) @@ -1606,6 +1634,7 @@ TEST_CASE_SELF(ble_att_svr_test_read_group_type) .start_handle = 0, } })); + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_prep_write) @@ -1767,6 +1796,8 @@ TEST_CASE_SELF(ble_att_svr_test_prep_write) ble_att_svr_test_misc_prep_write(conn_handle, 6, 78, data + 78, 1, 0); ble_att_svr_test_misc_exec_write(conn_handle, BLE_ATT_EXEC_WRITE_F_EXECUTE, BLE_ATT_ERR_INVALID_ATTR_VALUE_LEN, 6); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_notify) @@ -1790,6 +1821,7 @@ TEST_CASE_SELF(ble_att_svr_test_notify) ble_att_svr_test_misc_verify_notify(conn_handle, 0, (uint8_t[]) { 1, 2, 3 }, 3, 0); + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_prep_write_tmo) @@ -1850,6 +1882,8 @@ TEST_CASE_SELF(ble_att_svr_test_prep_write_tmo) */ rc = ble_hs_atomic_conn_delete(conn_handle); TEST_ASSERT_FATAL(rc == 0); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_indicate) @@ -1872,6 +1906,8 @@ TEST_CASE_SELF(ble_att_svr_test_indicate) /* Attribute handle of 0. */ ble_att_svr_test_misc_verify_indicate(conn_handle, 0, (uint8_t[]) { 1, 2, 3 }, 3, 0); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_oom) @@ -2050,6 +2086,8 @@ TEST_CASE_SELF(ble_att_svr_test_oom) rc = os_mbuf_free_chain(oms); TEST_ASSERT_FATAL(rc == 0); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_CASE_SELF(ble_att_svr_test_unsupported_req) @@ -2076,19 +2114,12 @@ TEST_CASE_SELF(ble_att_svr_test_unsupported_req) /* Ensure no response sent. */ TEST_ASSERT(ble_hs_test_util_prev_tx_dequeue() == NULL); + + ble_att_svr_test_assert_mbufs_freed(); } TEST_SUITE(ble_att_svr_suite) { - /* When checking for mbuf leaks, ensure no stale prep entries. */ - static struct ble_hs_test_util_mbuf_params mbuf_params = { - .prev_tx = 1, - .rx_queue = 1, - .prep_list = 0, - }; - - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, &mbuf_params); - ble_att_svr_test_mtu(); ble_att_svr_test_read(); ble_att_svr_test_read_blob(); diff --git a/nimble/host/test/src/ble_gap_test.c b/nimble/host/test/src/ble_gap_test.c index 588239eb7..4902821ad 100644 --- a/nimble/host/test/src/ble_gap_test.c +++ b/nimble/host/test/src/ble_gap_test.c @@ -463,6 +463,8 @@ TEST_CASE_SELF(ble_gap_test_case_wl_bad_args) }, }), 1, 0, 0); TEST_ASSERT(rc == BLE_HS_EBUSY); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_wl_ctlr_fail) @@ -481,6 +483,8 @@ TEST_CASE_SELF(ble_gap_test_case_wl_ctlr_fail) ble_gap_test_util_wl_set(addrs, addrs_count, i, BLE_ERR_UNSPECIFIED); } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_wl_good) @@ -494,12 +498,12 @@ TEST_CASE_SELF(ble_gap_test_case_wl_good) int addrs_count = sizeof addrs / sizeof addrs[0]; ble_gap_test_util_wl_set(addrs, addrs_count, 0, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_wl) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_wl_good(); ble_gap_test_case_wl_bad_args(); ble_gap_test_case_wl_ctlr_fail(); @@ -577,6 +581,8 @@ TEST_CASE_SELF(ble_gap_test_case_disc_bad_args) rc = ble_gap_disc(BLE_OWN_ADDR_PUBLIC, 0, ¶ms, ble_gap_test_util_disc_cb, NULL); TEST_ASSERT(rc == BLE_HS_EINVAL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_disc_good) @@ -632,6 +638,8 @@ TEST_CASE_SELF(ble_gap_test_case_disc_good) TEST_ASSERT(ble_gap_test_disc_arg == NULL); } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_disc_ltd_mismatch) @@ -715,6 +723,8 @@ TEST_CASE_SELF(ble_gap_test_case_disc_hci_fail) TEST_ASSERT(!ble_gap_master_in_progress()); } } + + ble_hs_test_util_assert_mbufs_freed(NULL); } static void @@ -755,6 +765,8 @@ TEST_CASE_SELF(ble_gap_test_case_disc_dflts) { ble_gap_test_util_disc_dflts_once(0); ble_gap_test_util_disc_dflts_once(1); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_disc_already) @@ -774,6 +786,8 @@ TEST_CASE_SELF(ble_gap_test_case_disc_already) rc = ble_gap_disc(BLE_OWN_ADDR_PUBLIC, BLE_HS_FOREVER, &disc_params, ble_gap_test_util_disc_cb, NULL); TEST_ASSERT(rc == BLE_HS_EALREADY); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_disc_busy) @@ -796,12 +810,12 @@ TEST_CASE_SELF(ble_gap_test_case_disc_busy) rc = ble_gap_disc(BLE_OWN_ADDR_PUBLIC, BLE_HS_FOREVER, &disc_params, ble_gap_test_util_disc_cb, NULL); TEST_ASSERT(rc == BLE_HS_EBUSY); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_disc) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_disc_bad_args(); ble_gap_test_case_disc_good(); ble_gap_test_case_disc_ltd_mismatch(); @@ -871,6 +885,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_gen_good) peer_addr.val, 6) == 0); TEST_ASSERT(ble_hs_atomic_conn_flags(2, NULL) == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_gen_bad_args) @@ -902,6 +918,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_gen_bad_args) &((ble_addr_t) { BLE_ADDR_PUBLIC, { 1, 2, 3, 4, 5, 6 }}), 0, NULL, ble_gap_test_util_connect_cb, NULL); TEST_ASSERT(rc == BLE_HS_EALREADY); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_gen_dflt_params) @@ -918,6 +936,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_gen_dflt_params) &peer_addr, 0, NULL, ble_gap_test_util_connect_cb, NULL, 0); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_gen_already) @@ -940,6 +960,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_gen_already) rc = ble_gap_connect(BLE_OWN_ADDR_PUBLIC, &peer_addr, BLE_HS_FOREVER, &conn_params, ble_gap_test_util_connect_cb, NULL); TEST_ASSERT(rc == BLE_HS_EALREADY); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_gen_done) @@ -963,6 +985,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_gen_done) rc = ble_gap_connect(BLE_OWN_ADDR_PUBLIC, &peer_addr, BLE_HS_FOREVER, &conn_params, ble_gap_test_util_connect_cb, NULL); TEST_ASSERT(rc == BLE_HS_EDONE); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_gen_busy) @@ -987,6 +1011,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_gen_busy) rc = ble_gap_connect(BLE_OWN_ADDR_PUBLIC, &peer_addr, BLE_HS_FOREVER, &conn_params, ble_gap_test_util_connect_cb, NULL); TEST_ASSERT(rc == BLE_HS_EBUSY); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_gen_fail_evt) @@ -1031,12 +1057,12 @@ TEST_CASE_SELF(ble_gap_test_case_conn_gen_fail_evt) TEST_ASSERT(ble_gap_test_event.type == BLE_GAP_EVENT_DISCONNECT); TEST_ASSERT(ble_gap_test_event.disconnect.reason == BLE_HS_HCI_ERR(BLE_ERR_CONN_ESTABLISHMENT)); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_conn_gen) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_conn_gen_good(); ble_gap_test_case_conn_gen_bad_args(); ble_gap_test_case_conn_gen_dflt_params(); @@ -1113,6 +1139,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_cancel_bad_args) TEST_ASSERT(!ble_gap_master_in_progress()); rc = ble_hs_test_util_conn_cancel(0); TEST_ASSERT(rc == BLE_HS_EALREADY); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_cancel_good) @@ -1124,6 +1152,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_cancel_good) TEST_ASSERT(ble_gap_test_event.type == BLE_GAP_EVENT_CONNECT); TEST_ASSERT(ble_gap_test_event.connect.status == BLE_HS_EAPP); TEST_ASSERT(ble_gap_test_conn_desc.conn_handle == BLE_HS_CONN_HANDLE_NONE); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_cancel_ctlr_fail) @@ -1164,12 +1194,12 @@ TEST_CASE_SELF(ble_gap_test_case_conn_cancel_ctlr_fail) peer_addr, 6) == 0); TEST_ASSERT(ble_hs_atomic_conn_flags(2, NULL) == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_conn_cancel) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_conn_cancel_good(); ble_gap_test_case_conn_cancel_bad_args(); ble_gap_test_case_conn_cancel_ctlr_fail(); @@ -1222,6 +1252,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_terminate_bad_args) /*** Nonexistent connection. */ rc = ble_hs_test_util_conn_terminate(2, 0); TEST_ASSERT(rc == BLE_HS_ENOTCONN); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_terminate_good) @@ -1242,6 +1274,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_terminate_good) TEST_ASSERT(ble_hs_atomic_conn_flags(2, NULL) == BLE_HS_ENOTCONN); TEST_ASSERT(!ble_gap_master_in_progress()); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_terminate_ctlr_fail) @@ -1283,6 +1317,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_terminate_ctlr_fail) TEST_ASSERT(ble_hs_atomic_conn_flags(2, NULL) == 0); TEST_ASSERT(!ble_gap_master_in_progress()); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_terminate_hci_fail) @@ -1294,12 +1330,12 @@ TEST_CASE_SELF(ble_gap_test_case_conn_terminate_hci_fail) TEST_ASSERT(ble_gap_test_event.type == 0xff); TEST_ASSERT(ble_hs_atomic_conn_flags(2, NULL) == 0); TEST_ASSERT(!ble_gap_master_in_progress()); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_conn_terminate) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_conn_terminate_bad_args(); ble_gap_test_case_conn_terminate_good(); ble_gap_test_case_conn_terminate_ctlr_fail(); @@ -1414,12 +1450,12 @@ TEST_CASE_SELF(ble_gap_test_case_conn_find) rc = ble_gap_conn_find(54, &desc); TEST_ASSERT_FATAL(rc == 0); TEST_ASSERT(desc.role == BLE_GAP_ROLE_SLAVE); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_conn_find) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_conn_find(); } @@ -1589,6 +1625,8 @@ TEST_CASE_SELF(ble_gap_test_case_adv_bad_args) ble_gap_test_util_connect_cb, NULL, 0, 0); TEST_ASSERT(rc == BLE_HS_EALREADY); TEST_ASSERT(ble_gap_adv_active()); + + ble_hs_test_util_assert_mbufs_freed(NULL); } static void @@ -1673,6 +1711,8 @@ TEST_CASE_SELF(ble_gap_test_case_adv_dflt_params) BLE_OWN_ADDR_PUBLIC, &peer_addr, c, d); } } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_adv_good) @@ -1697,6 +1737,8 @@ TEST_CASE_SELF(ble_gap_test_case_adv_good) } } } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_adv_ctlr_fail) @@ -1718,6 +1760,8 @@ TEST_CASE_SELF(ble_gap_test_case_adv_ctlr_fail) TEST_ASSERT(ble_gap_test_conn_arg == NULL); } } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_adv_hci_fail) @@ -1739,12 +1783,12 @@ TEST_CASE_SELF(ble_gap_test_case_adv_hci_fail) } } } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_adv) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_adv_bad_args(); ble_gap_test_case_adv_dflt_params(); ble_gap_test_case_adv_good(); @@ -1798,6 +1842,8 @@ TEST_CASE_SELF(ble_gap_test_case_stop_adv_good) TEST_ASSERT(ble_gap_test_conn_arg == (void *)-1); } } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_stop_adv_hci_fail) @@ -1817,12 +1863,12 @@ TEST_CASE_SELF(ble_gap_test_case_stop_adv_hci_fail) TEST_ASSERT(ble_gap_test_conn_arg == (void *)-1); } } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_stop_adv) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_stop_adv_good(); ble_gap_test_case_stop_adv_hci_fail(); } @@ -2403,6 +2449,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_conn_good) .max_ce_len = 554, }}), 1, 0, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_conn_verify_params) @@ -2470,6 +2518,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_conn_verify_params) .max_ce_len = 554, }}), BLE_HS_EINVAL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_conn_bad) @@ -2483,6 +2533,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_conn_bad) .max_ce_len = 456, }}), 1, 0, BLE_ERR_LMP_COLLISION); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_conn_hci_fail) @@ -2496,6 +2548,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_conn_hci_fail) .max_ce_len = 456, }}), 1, BLE_ERR_UNSUPPORTED, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_conn_l2cap) @@ -2515,6 +2569,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_conn_l2cap) /* Rejected L2CAP. */ ble_gap_test_util_update_l2cap(¶ms, BLE_L2CAP_SIG_UPDATE_RSP_RESULT_REJECT); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_peer_good) @@ -2536,6 +2592,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_peer_good) .min_ce_len = 554, .max_ce_len = 554, }})); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_req_good) @@ -2573,6 +2631,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_req_good) .max_ce_len = 554, }}), -1, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_req_hci_fail) @@ -2593,6 +2653,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_req_hci_fail) .max_ce_len = 456, }}), 0, BLE_ERR_UNSUPPORTED); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_req_reject) @@ -2616,6 +2678,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_req_reject) .max_ce_len = 888, }}), -1, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_concurrent_good) @@ -2667,6 +2731,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_concurrent_good) .max_ce_len = 222, }}), -1, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_update_concurrent_hci_fail) @@ -2718,12 +2784,12 @@ TEST_CASE_SELF(ble_gap_test_case_update_concurrent_hci_fail) .max_ce_len = 222, }}), 1, BLE_ERR_UNSUPPORTED); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_update_conn) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_update_conn_good(); ble_gap_test_case_update_conn_bad(); ble_gap_test_case_update_conn_hci_fail(); @@ -2914,6 +2980,8 @@ TEST_CASE_SELF(ble_gap_test_case_update_timeout) /* L2CAP - Remote unsupported; LL timeout. */ ble_gap_test_util_update_l2cap_tmo(¶ms, 0, BLE_ERR_UNSUPP_REM_FEATURE, 1); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_timeout_conn_forever) @@ -2926,6 +2994,7 @@ TEST_CASE_SELF(ble_gap_test_case_conn_timeout_conn_forever) /* No timeout. */ ble_gap_test_util_conn_forever(); + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_timeout_conn_timeout) @@ -2938,6 +3007,7 @@ TEST_CASE_SELF(ble_gap_test_case_conn_timeout_conn_timeout) /* 20 ms. */ ble_gap_test_util_conn_timeout(20); + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_forever_conn_timeout) @@ -2955,6 +3025,8 @@ TEST_CASE_SELF(ble_gap_test_case_conn_forever_conn_timeout) /* 30 ms. */ ble_gap_test_util_conn_timeout(30); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_disc_timeout_disc_forever) @@ -2967,6 +3039,7 @@ TEST_CASE_SELF(ble_gap_test_case_disc_timeout_disc_forever) /* No timeout. */ ble_gap_test_util_disc_forever(); + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_disc_timeout_disc_timeout) @@ -2979,6 +3052,7 @@ TEST_CASE_SELF(ble_gap_test_case_disc_timeout_disc_timeout) /* 20 ms. */ ble_gap_test_util_disc_timeout(20); + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_disc_forever_disc_timeout) @@ -2993,6 +3067,8 @@ TEST_CASE_SELF(ble_gap_test_case_disc_forever_disc_timeout) /* 30 ms. */ ble_gap_test_util_disc_timeout(30); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_conn_timeout_disc_timeout) @@ -3004,12 +3080,12 @@ TEST_CASE_SELF(ble_gap_test_case_conn_timeout_disc_timeout) /* 1280 ms. */ ble_gap_test_util_disc_timeout(1280); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_timeout) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_conn_timeout_conn_forever(); ble_gap_test_case_conn_timeout_conn_timeout(); ble_gap_test_case_conn_forever_conn_timeout(); @@ -3045,6 +3121,8 @@ TEST_CASE_SELF(ble_gap_test_case_mtu_us) TEST_ASSERT(ble_gap_test_event.mtu.conn_handle == 2); TEST_ASSERT(ble_gap_test_event.mtu.channel_id == BLE_L2CAP_CID_ATT); TEST_ASSERT(ble_gap_test_event.mtu.value == 123); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_mtu_peer) @@ -3067,12 +3145,12 @@ TEST_CASE_SELF(ble_gap_test_case_mtu_peer) TEST_ASSERT(ble_gap_test_event.mtu.conn_handle == 2); TEST_ASSERT(ble_gap_test_event.mtu.channel_id == BLE_L2CAP_CID_ATT); TEST_ASSERT(ble_gap_test_event.mtu.value == 123); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_mtu) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_mtu_us(); ble_gap_test_case_mtu_peer(); } @@ -3122,6 +3200,8 @@ TEST_CASE_SELF(ble_gap_test_case_set_cb_good) TEST_ASSERT(event.disconnect.reason == BLE_HS_HCI_ERR(BLE_ERR_REM_USER_CONN_TERM)); TEST_ASSERT(event.disconnect.conn.conn_handle == 2); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gap_test_case_set_cb_bad) @@ -3133,12 +3213,12 @@ TEST_CASE_SELF(ble_gap_test_case_set_cb_bad) /* Ensure error is reported when specified connection doesn't exist. */ rc = ble_gap_set_event_cb(123, ble_gap_test_util_set_cb_event, NULL); TEST_ASSERT(rc == BLE_HS_ENOTCONN); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gap_test_suite_set_cb) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gap_test_case_set_cb_good(); ble_gap_test_case_set_cb_bad(); } diff --git a/nimble/host/test/src/ble_gatt_conn_test.c b/nimble/host/test/src/ble_gatt_conn_test.c index 905d6c61f..b7de63d52 100644 --- a/nimble/host/test/src/ble_gatt_conn_test.c +++ b/nimble/host/test/src/ble_gatt_conn_test.c @@ -550,6 +550,8 @@ TEST_CASE_SELF(ble_gatt_conn_test_disconnect) TEST_ASSERT(ble_gatt_conn_test_gap_event.notify_tx.attr_handle == attr_handle); TEST_ASSERT(ble_gatt_conn_test_gap_event.notify_tx.indication); + + ble_hs_test_util_assert_mbufs_freed(NULL); } static void @@ -736,12 +738,12 @@ TEST_CASE_SELF(ble_gatt_conn_test_timeout) rc = ble_gattc_indicate(1, attr_handle); TEST_ASSERT_FATAL(rc == 0); ble_gatt_conn_test_util_timeout(1, NULL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatt_conn_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatt_conn_test_disconnect(); ble_gatt_conn_test_timeout(); } diff --git a/nimble/host/test/src/ble_gatt_disc_c_test.c b/nimble/host/test/src/ble_gatt_disc_c_test.c index d3e1d5a37..e19db341b 100644 --- a/nimble/host/test/src/ble_gatt_disc_c_test.c +++ b/nimble/host/test/src/ble_gatt_disc_c_test.c @@ -375,6 +375,8 @@ TEST_CASE_SELF(ble_gatt_disc_c_test_disc_all) .uuid = BLE_UUID16_DECLARE(0x0023), }, { 0 } }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_disc_c_test_disc_uuid) @@ -532,6 +534,8 @@ TEST_CASE_SELF(ble_gatt_disc_c_test_disc_uuid) .uuid = BLE_UUID16_DECLARE(0x2010), }, { 0 } } ); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_disc_c_test_oom_all) @@ -618,6 +622,8 @@ TEST_CASE_SELF(ble_gatt_disc_c_test_oom_all) BLE_ATT_ERR_ATTR_NOT_FOUND, 1); ble_gatt_disc_c_test_misc_verify_chars(chrs, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_disc_c_test_oom_uuid) @@ -703,12 +709,12 @@ TEST_CASE_SELF(ble_gatt_disc_c_test_oom_uuid) BLE_ATT_ERR_ATTR_NOT_FOUND, 1); ble_gatt_disc_c_test_misc_verify_chars(chrs, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatt_disc_c_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatt_disc_c_test_disc_all(); ble_gatt_disc_c_test_disc_uuid(); ble_gatt_disc_c_test_oom_all(); diff --git a/nimble/host/test/src/ble_gatt_disc_d_test.c b/nimble/host/test/src/ble_gatt_disc_d_test.c index 4a608e159..e405c86f1 100644 --- a/nimble/host/test/src/ble_gatt_disc_d_test.c +++ b/nimble/host/test/src/ble_gatt_disc_d_test.c @@ -350,6 +350,8 @@ TEST_CASE_SELF(ble_gatt_disc_d_test_1) 0 } }) ); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_disc_d_test_oom_all) @@ -433,12 +435,12 @@ TEST_CASE_SELF(ble_gatt_disc_d_test_oom_all) BLE_ATT_ERR_ATTR_NOT_FOUND, 1); ble_gatt_disc_d_test_misc_verify_dscs(dscs, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatt_disc_d_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatt_disc_d_test_1(); ble_gatt_disc_d_test_oom_all(); } diff --git a/nimble/host/test/src/ble_gatt_disc_s_test.c b/nimble/host/test/src/ble_gatt_disc_s_test.c index fb7301c9a..3e7a30266 100644 --- a/nimble/host/test/src/ble_gatt_disc_s_test.c +++ b/nimble/host/test/src/ble_gatt_disc_s_test.c @@ -332,6 +332,8 @@ TEST_CASE_SELF(ble_gatt_disc_s_test_disc_all) { 7, 0xffff,BLE_UUID128_DECLARE(2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 ), }, { 0 } }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_disc_s_test_disc_uuid) @@ -395,6 +397,8 @@ TEST_CASE_SELF(ble_gatt_disc_s_test_disc_uuid) { 9, 0xffff,BLE_UUID16_DECLARE(0x1234) }, { 0 } }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_disc_s_test_oom_all) @@ -466,6 +470,8 @@ TEST_CASE_SELF(ble_gatt_disc_s_test_oom_all) BLE_ATT_ERR_ATTR_NOT_FOUND, 1); ble_gatt_disc_s_test_misc_verify_services(svcs); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_disc_s_test_oom_uuid) @@ -544,6 +550,8 @@ TEST_CASE_SELF(ble_gatt_disc_s_test_oom_uuid) BLE_ATT_ERR_ATTR_NOT_FOUND, 1); ble_gatt_disc_s_test_misc_verify_services(svcs); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_disc_s_test_oom_timeout) @@ -609,12 +617,12 @@ TEST_CASE_SELF(ble_gatt_disc_s_test_oom_timeout) rc = os_mbuf_free_chain(oms); TEST_ASSERT_FATAL(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatt_disc_s_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatt_disc_s_test_disc_all(); ble_gatt_disc_s_test_disc_uuid(); ble_gatt_disc_s_test_oom_all(); diff --git a/nimble/host/test/src/ble_gatt_find_s_test.c b/nimble/host/test/src/ble_gatt_find_s_test.c index adf23c1bf..172bdd332 100644 --- a/nimble/host/test/src/ble_gatt_find_s_test.c +++ b/nimble/host/test/src/ble_gatt_find_s_test.c @@ -340,6 +340,8 @@ TEST_CASE_SELF(ble_gatt_find_s_test_1) 0, } }) ); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_find_s_test_oom) @@ -420,12 +422,12 @@ TEST_CASE_SELF(ble_gatt_find_s_test_oom) 1); ble_gatt_find_s_test_misc_verify_incs(incs); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatt_find_s_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatt_find_s_test_1(); ble_gatt_find_s_test_oom(); } diff --git a/nimble/host/test/src/ble_gatt_read_test.c b/nimble/host/test/src/ble_gatt_read_test.c index dd668d030..572b0bf1c 100644 --- a/nimble/host/test/src/ble_gatt_read_test.c +++ b/nimble/host/test/src/ble_gatt_read_test.c @@ -538,6 +538,8 @@ TEST_CASE_SELF(ble_gatt_read_test_by_handle) .value = { 0xfa, 0x4c }, .value_len = 2 } }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_read_test_by_uuid) @@ -605,6 +607,8 @@ TEST_CASE_SELF(ble_gatt_read_test_by_uuid) }, { 0, } }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_read_test_long) @@ -665,6 +669,8 @@ TEST_CASE_SELF(ble_gatt_read_test_long) .value = { 1, 2, 3, 4, 5, 6, 7 }, .value_len = 7 } }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_read_test_mult) @@ -749,6 +755,8 @@ TEST_CASE_SELF(ble_gatt_read_test_mult) }, { 0 } }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_read_test_concurrent) @@ -806,6 +814,8 @@ TEST_CASE_SELF(ble_gatt_read_test_concurrent) TEST_ASSERT(memcmp(ble_gatt_read_test_attrs[i].value, attrs[i].value, attrs[i].value_len) == 0); } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_read_test_long_oom) @@ -898,12 +908,12 @@ TEST_CASE_SELF(ble_gatt_read_test_long_oom) TEST_ASSERT(ble_gatt_read_test_attrs[0].value_len == attr.value_len); TEST_ASSERT(memcmp(ble_gatt_read_test_attrs[0].value, attr.value, ble_gatt_read_test_attrs[0].value_len) == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatt_read_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatt_read_test_by_handle(); ble_gatt_read_test_by_uuid(); ble_gatt_read_test_long(); diff --git a/nimble/host/test/src/ble_gatt_write_test.c b/nimble/host/test/src/ble_gatt_write_test.c index d5c80a872..caa8e5657 100644 --- a/nimble/host/test/src/ble_gatt_write_test.c +++ b/nimble/host/test/src/ble_gatt_write_test.c @@ -384,6 +384,8 @@ TEST_CASE_SELF(ble_gatt_write_test_no_rsp) /* No response expected; verify callback not called. */ TEST_ASSERT(!ble_gatt_write_test_cb_called); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_rsp) @@ -410,6 +412,8 @@ TEST_CASE_SELF(ble_gatt_write_test_rsp) /* Verify callback got called. */ TEST_ASSERT(ble_gatt_write_test_cb_called); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_long_good) @@ -424,6 +428,8 @@ TEST_CASE_SELF(ble_gatt_write_test_long_good) /*** Maximum reqs/rsps. */ ble_gatt_write_test_misc_long_good(BLE_ATT_ATTR_MAX_LEN); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_long_bad_handle) @@ -442,6 +448,8 @@ TEST_CASE_SELF(ble_gatt_write_test_long_bad_handle) ble_gatt_write_test_misc_long_bad( BLE_ATT_ATTR_MAX_LEN, ble_gatt_write_test_misc_long_fail_handle); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_long_bad_offset) @@ -460,6 +468,8 @@ TEST_CASE_SELF(ble_gatt_write_test_long_bad_offset) ble_gatt_write_test_misc_long_bad( BLE_ATT_ATTR_MAX_LEN, ble_gatt_write_test_misc_long_fail_offset); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_long_bad_value) @@ -478,6 +488,8 @@ TEST_CASE_SELF(ble_gatt_write_test_long_bad_value) ble_gatt_write_test_misc_long_bad( BLE_ATT_ATTR_MAX_LEN, ble_gatt_write_test_misc_long_fail_value); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_long_bad_length) @@ -496,6 +508,8 @@ TEST_CASE_SELF(ble_gatt_write_test_long_bad_length) ble_gatt_write_test_misc_long_bad( BLE_ATT_ATTR_MAX_LEN, ble_gatt_write_test_misc_long_fail_length); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_reliable_good) @@ -556,6 +570,8 @@ TEST_CASE_SELF(ble_gatt_write_test_reliable_good) }, { 0 } })); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_long_queue_full) @@ -606,6 +622,8 @@ TEST_CASE_SELF(ble_gatt_write_test_long_queue_full) /* Verify clear queue command got sent. */ ble_hs_test_util_verify_tx_exec_write(BLE_ATT_EXEC_WRITE_F_CANCEL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_long_oom) @@ -698,6 +716,8 @@ TEST_CASE_SELF(ble_gatt_write_test_long_oom) /* Verify callback got called. */ TEST_ASSERT(ble_gatt_write_test_cb_called); TEST_ASSERT(!ble_gattc_any_jobs()); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatt_write_test_reliable_oom) @@ -792,12 +812,12 @@ TEST_CASE_SELF(ble_gatt_write_test_reliable_oom) /* Verify callback got called. */ TEST_ASSERT(ble_gatt_write_test_cb_called); TEST_ASSERT(!ble_gattc_any_jobs()); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatt_write_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatt_write_test_no_rsp(); ble_gatt_write_test_rsp(); ble_gatt_write_test_long_good(); diff --git a/nimble/host/test/src/ble_gatts_notify_test.c b/nimble/host/test/src/ble_gatts_notify_test.c index 6d5a24eb6..6e04ac362 100644 --- a/nimble/host/test/src/ble_gatts_notify_test.c +++ b/nimble/host/test/src/ble_gatts_notify_test.c @@ -655,6 +655,8 @@ TEST_CASE_SELF(ble_gatts_notify_test_n) flags = ble_gatts_notify_test_misc_read_notify( conn_handle, ble_gatts_notify_test_chr_2_def_handle); TEST_ASSERT(flags == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_notify_test_i) @@ -765,6 +767,8 @@ TEST_CASE_SELF(ble_gatts_notify_test_i) flags = ble_gatts_notify_test_misc_read_notify( conn_handle, ble_gatts_notify_test_chr_2_def_handle); TEST_ASSERT(flags == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_notify_test_bonded_n) @@ -829,6 +833,8 @@ TEST_CASE_SELF(ble_gatts_notify_test_bonded_n) /* Ensure both CCCDs still persisted. */ TEST_ASSERT(ble_hs_test_util_num_cccds() == 2); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_notify_test_bonded_i) @@ -917,6 +923,8 @@ TEST_CASE_SELF(ble_gatts_notify_test_bonded_i) /* Ensure both CCCDs still persisted. */ TEST_ASSERT(ble_hs_test_util_num_cccds() == 2); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_notify_test_bonded_i_no_ack) @@ -990,6 +998,8 @@ TEST_CASE_SELF(ble_gatts_notify_test_bonded_i_no_ack) rc = ble_store_read_cccd(&key_cccd, &value_cccd); TEST_ASSERT_FATAL(rc == 0); TEST_ASSERT(!value_cccd.value_changed); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_notify_test_disallowed) @@ -1057,12 +1067,12 @@ TEST_CASE_SELF(ble_gatts_notify_test_disallowed) /* Attempt to enable indications on chr3 should succeed. */ ble_gatts_notify_test_misc_try_enable_notify( 2, chr3_val_handle - 1, BLE_GATTS_CLT_CFG_F_INDICATE, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatts_notify_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatts_notify_test_n(); ble_gatts_notify_test_i(); diff --git a/nimble/host/test/src/ble_gatts_read_test.c b/nimble/host/test/src/ble_gatts_read_test.c index 542ac66da..381b39ad7 100644 --- a/nimble/host/test/src/ble_gatts_read_test.c +++ b/nimble/host/test/src/ble_gatts_read_test.c @@ -204,6 +204,7 @@ TEST_CASE_SELF(ble_gatts_read_test_case_basic) ble_gatts_read_test_chr_2_def_handle + 1, ((uint8_t[6]){0,10,20,30,40,50}), 6); + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_read_test_case_long) @@ -245,12 +246,12 @@ TEST_CASE_SELF(ble_gatts_read_test_case_long) /* Ensure response starts at appropriate offset (22). */ ble_hs_test_util_verify_tx_read_blob_rsp( ble_gatts_read_test_chr_1_val + 22, 18); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatts_read_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatts_read_test_case_basic(); ble_gatts_read_test_case_long(); } diff --git a/nimble/host/test/src/ble_gatts_reg_test.c b/nimble/host/test/src/ble_gatts_reg_test.c index 63d3b1398..ea69028e8 100644 --- a/nimble/host/test/src/ble_gatts_reg_test.c +++ b/nimble/host/test/src/ble_gatts_reg_test.c @@ -344,6 +344,8 @@ TEST_CASE_SELF(ble_gatts_reg_test_svc_return) rc = ble_gatts_register_svcs(svcs_good, NULL, NULL); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_reg_test_chr_return) @@ -386,6 +388,8 @@ TEST_CASE_SELF(ble_gatts_reg_test_chr_return) rc = ble_gatts_register_svcs(svcs_good, NULL, NULL); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_reg_test_dsc_return) @@ -442,6 +446,8 @@ TEST_CASE_SELF(ble_gatts_reg_test_dsc_return) rc = ble_gatts_register_svcs(svcs_good, NULL, NULL); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } static void @@ -530,6 +536,8 @@ TEST_CASE_SELF(ble_gatts_reg_test_svc_cb) } }; ble_gatts_reg_test_misc_svcs(svcs); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_reg_test_chr_cb) @@ -583,6 +591,8 @@ TEST_CASE_SELF(ble_gatts_reg_test_chr_cb) }, { 0 } }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_gatts_reg_test_dsc_cb) @@ -693,12 +703,12 @@ TEST_CASE_SELF(ble_gatts_reg_test_dsc_cb) }, { 0 } }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_gatts_reg_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_gatts_reg_test_svc_return(); ble_gatts_reg_test_chr_return(); ble_gatts_reg_test_dsc_return(); diff --git a/nimble/host/test/src/ble_hs_adv_test.c b/nimble/host/test/src/ble_hs_adv_test.c index 481ad9d63..6ecb43699 100644 --- a/nimble/host/test/src/ble_hs_adv_test.c +++ b/nimble/host/test/src/ble_hs_adv_test.c @@ -678,6 +678,8 @@ TEST_CASE_SELF(ble_hs_adv_test_case_user) }, { 0 }, }, &rsp_fields, NULL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_adv_test_case_user_rsp) @@ -1216,6 +1218,8 @@ TEST_CASE_SELF(ble_hs_adv_test_case_user_rsp) }, { 0 }, }); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_adv_test_case_user_full_payload) @@ -1261,12 +1265,12 @@ TEST_CASE_SELF(ble_hs_adv_test_case_user_full_payload) adv_fields.mfg_data_len = 30; rc = ble_gap_adv_set_fields(&adv_fields); TEST_ASSERT(rc == BLE_HS_EMSGSIZE); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_hs_adv_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_hs_adv_test_case_user(); ble_hs_adv_test_case_user_rsp(); ble_hs_adv_test_case_user_full_payload(); diff --git a/nimble/host/test/src/ble_hs_conn_test.c b/nimble/host/test/src/ble_hs_conn_test.c index 415c40dce..4a9e834a8 100644 --- a/nimble/host/test/src/ble_hs_conn_test.c +++ b/nimble/host/test/src/ble_hs_conn_test.c @@ -87,6 +87,8 @@ TEST_CASE_SELF(ble_hs_conn_test_direct_connect_success) TEST_ASSERT(chan->peer_mtu == 0); ble_hs_unlock(); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_conn_test_direct_connectable_success) @@ -145,6 +147,8 @@ TEST_CASE_SELF(ble_hs_conn_test_direct_connectable_success) TEST_ASSERT(chan->peer_mtu == 0); ble_hs_unlock(); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_conn_test_undirect_connectable_success) @@ -210,12 +214,12 @@ TEST_CASE_SELF(ble_hs_conn_test_undirect_connectable_success) TEST_ASSERT(chan->peer_mtu == 0); ble_hs_unlock(); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_hs_conn_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_hs_conn_test_direct_connect_success(); ble_hs_conn_test_direct_connectable_success(); ble_hs_conn_test_undirect_connectable_success(); diff --git a/nimble/host/test/src/ble_hs_hci_test.c b/nimble/host/test/src/ble_hs_hci_test.c index 7bd68a750..cbfda3599 100644 --- a/nimble/host/test/src/ble_hs_hci_test.c +++ b/nimble/host/test/src/ble_hs_hci_test.c @@ -39,6 +39,8 @@ TEST_CASE_SELF(ble_hs_hci_test_event_bad) buf[1] = 0; rc = ble_hs_hci_evt_process(buf); TEST_ASSERT(rc == BLE_HS_ENOTSUP); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_hci_test_rssi) @@ -81,6 +83,8 @@ TEST_CASE_SELF(ble_hs_hci_test_rssi) ble_hs_test_util_hci_ack_set_params(opcode, 0, params, sizeof params + 1); rc = ble_hs_hci_util_read_rssi(1, &rssi); TEST_ASSERT(rc == BLE_HS_ECONTROLLER); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_hci_acl_one_conn) @@ -165,6 +169,8 @@ TEST_CASE_SELF(ble_hs_hci_acl_one_conn) evt.reason = BLE_ERR_CONN_TERM_LOCAL; ble_hs_test_util_hci_rx_disconn_complete_event(&evt); TEST_ASSERT_FATAL(ble_hs_hci_avail_pkts == 5); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_hci_acl_two_conn) @@ -325,12 +331,12 @@ TEST_CASE_SELF(ble_hs_hci_acl_two_conn) ble_hs_test_util_verify_tx_write_cmd(100, data + 10, 25); ble_hs_test_util_verify_tx_write_cmd(100, data + 20, 70); ble_hs_test_util_verify_tx_write_cmd(100, data + 30, 70); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_hs_hci_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_hs_hci_test_event_bad(); ble_hs_hci_test_rssi(); ble_hs_hci_acl_one_conn(); diff --git a/nimble/host/test/src/ble_hs_id_test.c b/nimble/host/test/src/ble_hs_id_test.c index 55038ee6b..c5fe6ce20 100644 --- a/nimble/host/test/src/ble_hs_id_test.c +++ b/nimble/host/test/src/ble_hs_id_test.c @@ -48,6 +48,8 @@ TEST_CASE_SELF(ble_hs_id_test_case_auto_none) rc = ble_hs_id_test_util_infer_auto(0, &own_addr_type); TEST_ASSERT_FATAL(rc == BLE_HS_ENOADDR); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_id_test_case_auto_public) @@ -60,6 +62,8 @@ TEST_CASE_SELF(ble_hs_id_test_case_auto_public) rc = ble_hs_id_test_util_infer_auto(0, &own_addr_type); TEST_ASSERT_FATAL(rc == 0); TEST_ASSERT(own_addr_type == BLE_OWN_ADDR_PUBLIC); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_id_test_case_auto_random) @@ -75,6 +79,8 @@ TEST_CASE_SELF(ble_hs_id_test_case_auto_random) rc = ble_hs_id_test_util_infer_auto(0, &own_addr_type); TEST_ASSERT_FATAL(rc == 0); TEST_ASSERT(own_addr_type == BLE_OWN_ADDR_RANDOM); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_id_test_case_auto_rpa_pub) @@ -87,6 +93,8 @@ TEST_CASE_SELF(ble_hs_id_test_case_auto_rpa_pub) rc = ble_hs_id_test_util_infer_auto(1, &own_addr_type); TEST_ASSERT_FATAL(rc == 0); TEST_ASSERT(own_addr_type == BLE_OWN_ADDR_RPA_PUBLIC_DEFAULT); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_hs_id_test_case_auto_rpa_rnd) @@ -102,12 +110,12 @@ TEST_CASE_SELF(ble_hs_id_test_case_auto_rpa_rnd) rc = ble_hs_id_test_util_infer_auto(1, &own_addr_type); TEST_ASSERT_FATAL(rc == 0); TEST_ASSERT(own_addr_type == BLE_OWN_ADDR_RPA_RANDOM_DEFAULT); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_hs_id_test_suite_auto) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_hs_id_test_case_auto_none(); ble_hs_id_test_case_auto_public(); ble_hs_id_test_case_auto_random(); diff --git a/nimble/host/test/src/ble_hs_pvcy_test.c b/nimble/host/test/src/ble_hs_pvcy_test.c index 672b2387d..79b93b833 100644 --- a/nimble/host/test/src/ble_hs_pvcy_test.c +++ b/nimble/host/test/src/ble_hs_pvcy_test.c @@ -291,6 +291,8 @@ TEST_CASE_SELF(ble_hs_pvcy_test_case_restore_irks) value_sec2.irk, ble_hs_pvcy_default_irk, false, false); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** No active GAP procedures. */ @@ -300,6 +302,8 @@ TEST_CASE_SELF(ble_hs_pvcy_test_case_add_irk_idle) ble_hs_pvcy_test_util_add_arbitrary_irk(false, false); TEST_ASSERT(ble_hs_pvcy_test_num_gap_events == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /*** Advertising active. */ @@ -327,6 +331,8 @@ TEST_CASE_SELF(ble_hs_pvcy_test_case_add_irk_adv) /* Ensure GAP procedures are no longer preempted. */ ble_hs_pvcy_test_util_all_gap_procs(0, 0, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /*** Discovery active. */ @@ -354,6 +360,8 @@ TEST_CASE_SELF(ble_hs_pvcy_test_case_add_irk_disc) /* Ensure GAP procedures are no longer preempted. */ ble_hs_pvcy_test_util_all_gap_procs(0, 0, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /*** Connect active. */ @@ -392,6 +400,8 @@ TEST_CASE_SELF(ble_hs_pvcy_test_case_add_irk_conn) /* Ensure GAP procedures are no longer preempted. */ ble_hs_pvcy_test_util_all_gap_procs(0, 0, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /*** Advertising and discovery active. */ @@ -431,6 +441,8 @@ TEST_CASE_SELF(ble_hs_pvcy_test_case_add_irk_adv_disc) /* Ensure GAP procedures are no longer preempted. */ ble_hs_pvcy_test_util_all_gap_procs(0, 0, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /*** Advertising and connecting active. */ @@ -481,12 +493,12 @@ TEST_CASE_SELF(ble_hs_pvcy_test_case_add_irk_adv_conn) /* Ensure GAP procedures are no longer preempted. */ ble_hs_pvcy_test_util_all_gap_procs(0, 0, 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_hs_pvcy_test_suite_irk) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_hs_pvcy_test_case_restore_irks(); ble_hs_pvcy_test_case_add_irk_idle(); ble_hs_pvcy_test_case_add_irk_adv(); diff --git a/nimble/host/test/src/ble_hs_stop_test.c b/nimble/host/test/src/ble_hs_stop_test.c index db9c3ebcc..526d5f5af 100644 --- a/nimble/host/test/src/ble_hs_stop_test.c +++ b/nimble/host/test/src/ble_hs_stop_test.c @@ -124,6 +124,8 @@ TEST_CASE_TASK(ble_hs_stop_test_new_procs) rc = ble_hs_test_util_conn_cancel(0); TEST_ASSERT(rc == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_TASK(ble_hs_stop_test_cur_procs) @@ -171,6 +173,8 @@ TEST_CASE_TASK(ble_hs_stop_test_cur_procs) TEST_ASSERT(bhst_events[0].adv_complete.reason == BLE_HS_EPREEMPTED); TEST_ASSERT(bhst_events[1].type == BLE_GAP_EVENT_DISC_COMPLETE); TEST_ASSERT(bhst_events[1].disc_complete.reason == BLE_HS_EPREEMPTED); + + ble_hs_test_util_assert_mbufs_freed(NULL); } static void @@ -184,7 +188,6 @@ bhst_pre_test(void *arg) TEST_SUITE(ble_hs_stop_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); tu_suite_set_pre_test_cb(bhst_pre_test, NULL); ble_hs_stop_test_new_procs(); diff --git a/nimble/host/test/src/ble_hs_test.c b/nimble/host/test/src/ble_hs_test.c index 6bc071df0..adf994238 100644 --- a/nimble/host/test/src/ble_hs_test.c +++ b/nimble/host/test/src/ble_hs_test.c @@ -35,6 +35,9 @@ main(int argc, char **argv) * should enable privacy as needed, but the test util functions are so low * level that they make this very difficult to arrange (individual HCI * commands and responses). + * + * To fix this, we should implement a set of higher level BLE test + * functions that don't require individual HCI commands to be specified. */ ble_gap_test_suite_disc(); diff --git a/nimble/host/test/src/ble_hs_test_util.c b/nimble/host/test/src/ble_hs_test_util.c index b0ac53451..a63d02f68 100644 --- a/nimble/host/test/src/ble_hs_test_util.c +++ b/nimble/host/test/src/ble_hs_test_util.c @@ -1841,12 +1841,6 @@ ble_hs_test_util_assert_mbufs_freed( TEST_ASSERT(count == os_msys_count()); } -void -ble_hs_test_util_post_test(void *arg) -{ - ble_hs_test_util_assert_mbufs_freed(arg); -} - static int ble_hs_test_util_pkt_txed(struct os_mbuf *om, void *arg) { diff --git a/nimble/host/test/src/ble_l2cap_test.c b/nimble/host/test/src/ble_l2cap_test.c index c36b0ca95..d70cbea06 100644 --- a/nimble/host/test/src/ble_l2cap_test.c +++ b/nimble/host/test/src/ble_l2cap_test.c @@ -278,6 +278,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_bad_header) rc = ble_l2cap_test_util_rx_first_frag(2, 14, 1234, 10); TEST_ASSERT(rc == BLE_HS_ENOENT); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_bad_handle) @@ -294,6 +296,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_bad_handle) /* Ensure we did not send anything in return. */ TEST_ASSERT_FATAL(ble_hs_test_util_prev_tx_dequeue() == NULL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /***************************************************************************** @@ -334,6 +338,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_frag_single) ble_l2cap_test_util_verify_middle_frag(2, 2); ble_l2cap_test_util_verify_middle_frag(2, 21); ble_l2cap_test_util_verify_last_frag(2, 5); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_frag_multiple) @@ -356,6 +362,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_frag_multiple) ble_l2cap_test_util_verify_middle_frag(4, 2); ble_l2cap_test_util_verify_last_frag(4, 1); ble_l2cap_test_util_verify_last_frag(2, 1); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_frag_channels) @@ -398,6 +406,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_frag_channels) * Mbuf leaks are tested in the post-test-case callback. */ ble_hs_test_util_conn_disconnect(2); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_frag_timeout) @@ -443,6 +453,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_frag_timeout) /* Ensure connection was terminated. */ ble_hs_test_util_hci_verify_tx_disconnect(2, BLE_ERR_REM_USER_CONN_TERM); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /***************************************************************************** @@ -464,6 +476,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_unsol_rsp) /* Ensure we did not send anything in return. */ TEST_ASSERT_FATAL(ble_hs_test_util_prev_tx_dequeue() == NULL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /***************************************************************************** @@ -569,21 +583,25 @@ ble_l2cap_test_util_we_update(int peer_accepts) TEST_CASE_SELF(ble_l2cap_test_case_sig_update_accept) { ble_l2cap_test_util_peer_updates(1); + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_update_reject) { ble_l2cap_test_util_peer_updates(0); + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_update_init_accept) { ble_l2cap_test_util_we_update(1); + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_update_init_reject) { ble_l2cap_test_util_we_update(0); + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_update_init_fail_master) @@ -605,6 +623,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_update_init_fail_master) /* Ensure callback never called. */ TEST_ASSERT(ble_l2cap_test_update_status == -1); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_update_init_fail_bad_id) @@ -645,6 +665,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_update_init_fail_bad_id) /* Ensure callback got called. */ TEST_ASSERT(ble_l2cap_test_update_status == 0); TEST_ASSERT(ble_l2cap_test_update_arg == NULL); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /* Test enum but first four events matches to events which L2CAP sends to @@ -1018,6 +1040,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_conn_invalid_psm) ble_l2cap_test_coc_connect(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_conn_out_of_resource) @@ -1037,6 +1061,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_conn_out_of_resource) ble_l2cap_test_coc_connect(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_conn_invalid_cid) @@ -1056,6 +1082,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_conn_invalid_cid) ble_l2cap_test_coc_connect(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_conn_insuff_authen) @@ -1075,6 +1103,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_conn_insuff_authen) ble_l2cap_test_coc_connect(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_conn_insuff_author) @@ -1094,6 +1124,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_conn_insuff_author) ble_l2cap_test_coc_connect(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_conn_invalid_psm) @@ -1112,6 +1144,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_conn_invalid_psm) ble_l2cap_test_coc_connect_by_peer(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_conn_rejected_by_app) @@ -1145,6 +1179,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_conn_rejected_by_app) * connection, channel is destroyed. In such case CID for channel has been * used and we need to increase current_cid. */ current_cid++; + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_conn_success) @@ -1169,6 +1205,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_conn_success) ble_l2cap_test_coc_connect_by_peer(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_disconnect_succeed) @@ -1190,6 +1228,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_disconnect_succeed) ble_l2cap_test_coc_disc(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_disconnect_succeed) @@ -1211,6 +1251,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_disconnect_succeed) ble_l2cap_test_coc_disc_by_peer(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_disconnect_failed) @@ -1232,6 +1274,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_sig_coc_incoming_disconnect_failed) ble_l2cap_test_coc_invalid_disc_by_peer(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_coc_send_data_succeed) @@ -1256,6 +1300,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_coc_send_data_succeed) ble_l2cap_test_coc_disc(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_coc_send_data_failed_too_big_sdu) @@ -1282,6 +1328,8 @@ TEST_CASE_SELF(ble_l2cap_test_case_coc_send_data_failed_too_big_sdu) ble_l2cap_test_coc_disc(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_l2cap_test_case_coc_recv_data_succeed) @@ -1306,12 +1354,12 @@ TEST_CASE_SELF(ble_l2cap_test_case_coc_recv_data_succeed) ble_l2cap_test_coc_disc(&t); TEST_ASSERT(t.expected_num_of_ev == t.event_iter); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_l2cap_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_l2cap_test_case_bad_header(); ble_l2cap_test_case_bad_handle(); ble_l2cap_test_case_frag_single(); diff --git a/nimble/host/test/src/ble_os_test.c b/nimble/host/test/src/ble_os_test.c index cbeb64ae2..18a1a07f2 100644 --- a/nimble/host/test/src/ble_os_test.c +++ b/nimble/host/test/src/ble_os_test.c @@ -175,6 +175,8 @@ TEST_CASE_SELF(ble_gap_direct_connect_test_case) OS_STACK_ALIGN(BLE_OS_TEST_STACK_SIZE)); os_start(); + + ble_hs_test_util_assert_mbufs_freed(NULL); } static int @@ -261,6 +263,8 @@ TEST_CASE_SELF(ble_os_disc_test_case) OS_STACK_ALIGN(BLE_OS_TEST_STACK_SIZE)); os_start(); + + ble_hs_test_util_assert_mbufs_freed(NULL); } static int @@ -382,12 +386,12 @@ TEST_CASE_SELF(ble_gap_terminate_test_case) OS_STACK_ALIGN(BLE_OS_TEST_STACK_SIZE)); os_start(); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_os_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_os_disc_test_case(); ble_gap_direct_connect_test_case(); ble_gap_terminate_test_case(); diff --git a/nimble/host/test/src/ble_sm_lgcy_test.c b/nimble/host/test/src/ble_sm_lgcy_test.c index e7fd7291f..4529d3624 100644 --- a/nimble/host/test/src/ble_sm_lgcy_test.c +++ b/nimble/host/test/src/ble_sm_lgcy_test.c @@ -162,6 +162,8 @@ TEST_CASE_SELF(ble_sm_lgcy_peer_jw_iio4_rio3_b1_iat0_rat0_ik7_rk7) }, }; ble_sm_test_util_peer_lgcy_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -297,6 +299,8 @@ TEST_CASE_SELF(ble_sm_lgcy_peer_pk_iio4_rio0_b1_iat0_rat0_ik7_rk7) }, }; ble_sm_test_util_peer_lgcy_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -420,6 +424,8 @@ TEST_CASE_SELF(ble_sm_lgcy_us_jw_iio3_rio3_b1_iat0_rat1_ik7_rk5) }, }; ble_sm_test_util_us_lgcy_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -544,6 +550,8 @@ TEST_CASE_SELF(ble_sm_lgcy_us_pk_iio4_rio2_b1_iat0_rat1_ik7_rk5) }, }; ble_sm_test_util_us_lgcy_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -682,6 +690,8 @@ TEST_CASE_SELF(ble_sm_lgcy_us_ob_iio3_rio3_b1_iat0_rat0_ik7_rk7) }, }; ble_sm_test_util_us_lgcy_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -817,12 +827,12 @@ TEST_CASE_SELF(ble_sm_lgcy_peer_pk_iio4_rio4_b1_iat0_rat0_ik7_rk7) }, }; ble_sm_test_util_peer_lgcy_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_sm_lgcy_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - /*** No privacy. */ /* Peer as initiator. */ diff --git a/nimble/host/test/src/ble_sm_sc_test.c b/nimble/host/test/src/ble_sm_sc_test.c index a3ed5b139..c3d195503 100644 --- a/nimble/host/test/src/ble_sm_sc_test.c +++ b/nimble/host/test/src/ble_sm_sc_test.c @@ -170,6 +170,8 @@ TEST_CASE_SELF(ble_sm_sc_peer_jw_iio3_rio3_b1_iat0_rat0_ik5_rk7) }, }; ble_sm_test_util_peer_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -775,6 +777,8 @@ TEST_CASE_SELF(ble_sm_sc_peer_pk_iio0_rio2_b1_iat0_rat0_ik5_rk7) }, }; ble_sm_test_util_peer_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -1380,6 +1384,8 @@ TEST_CASE_SELF(ble_sm_sc_peer_pk_iio2_rio0_b1_iat0_rat0_ik5_rk7) }, }; ble_sm_test_util_peer_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -1524,6 +1530,8 @@ TEST_CASE_SELF(ble_sm_sc_peer_nc_iio1_rio1_b1_iat0_rat0_ik5_rk7) }, }; ble_sm_test_util_peer_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -1666,6 +1674,8 @@ TEST_CASE_SELF(ble_sm_sc_us_jw_iio3_rio4_b1_iat0_rat0_ik7_rk5) }, }; ble_sm_test_util_us_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -2271,6 +2281,8 @@ TEST_CASE_SELF(ble_sm_sc_us_pk_iio2_rio4_b1_iat0_rat0_ik7_rk5) }, }; ble_sm_test_util_us_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -2876,6 +2888,8 @@ TEST_CASE_SELF(ble_sm_sc_us_pk_iio0_rio4_b1_iat0_rat0_ik7_rk5) }, }; ble_sm_test_util_us_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -3020,6 +3034,8 @@ TEST_CASE_SELF(ble_sm_sc_us_nc_iio1_rio4_b1_iat0_rat0_ik7_rk5) }, }; ble_sm_test_util_us_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -3182,6 +3198,8 @@ TEST_CASE_SELF(ble_sm_sc_peer_jw_iio3_rio3_b1_iat2_rat2_ik7_rk7) }, }; ble_sm_test_util_peer_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -3334,6 +3352,8 @@ TEST_CASE_SELF(ble_sm_sc_peer_nc_iio1_rio1_b1_iat2_rat2_ik3_rk3) }, }; ble_sm_test_util_peer_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -3953,6 +3973,8 @@ TEST_CASE_SELF(ble_sm_sc_peer_pk_iio2_rio0_b1_iat2_rat2_ik7_rk3) }, }; ble_sm_test_util_peer_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -4103,6 +4125,8 @@ TEST_CASE_SELF(ble_sm_sc_us_jw_iio3_rio3_b1_iat2_rat2_ik3_rk3) }, }; ble_sm_test_util_us_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -4255,6 +4279,8 @@ TEST_CASE_SELF(ble_sm_sc_us_nc_iio1_rio1_b1_iat2_rat2_ik3_rk3) }, }; ble_sm_test_util_us_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /** @@ -4874,12 +4900,12 @@ TEST_CASE_SELF(ble_sm_sc_us_pk_iio2_rio0_b1_iat2_rat2_ik7_rk3) }, }; ble_sm_test_util_us_sc_good(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_sm_sc_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - /*** No privacy. */ /* Peer as initiator. */ diff --git a/nimble/host/test/src/ble_sm_test.c b/nimble/host/test/src/ble_sm_test.c index 381d171c2..5dc6b7f12 100644 --- a/nimble/host/test/src/ble_sm_test.c +++ b/nimble/host/test/src/ble_sm_test.c @@ -55,6 +55,8 @@ TEST_CASE_SELF(ble_sm_test_case_f4) err = ble_sm_alg_f4(u, v, x, z, res); TEST_ASSERT_FATAL(err == 0); TEST_ASSERT(memcmp(res, exp, 16) == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_sm_test_case_f5) @@ -84,6 +86,8 @@ TEST_CASE_SELF(ble_sm_test_case_f5) TEST_ASSERT_FATAL(err == 0); TEST_ASSERT(memcmp(mackey, exp_mackey, 16) == 0); TEST_ASSERT(memcmp(ltk, exp_ltk, 16) == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_sm_test_case_f6) @@ -109,6 +113,8 @@ TEST_CASE_SELF(ble_sm_test_case_f6) err = ble_sm_alg_f6(w, n1, n2, r, io_cap, a1t, a1, a2t, a2, res); TEST_ASSERT_FATAL(err == 0); TEST_ASSERT(memcmp(res, exp, 16) == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_sm_test_case_g2) @@ -132,6 +138,8 @@ TEST_CASE_SELF(ble_sm_test_case_g2) err = ble_sm_alg_g2(u, v, x, y, &val); TEST_ASSERT_FATAL(err == 0); TEST_ASSERT(val == exp_val); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_sm_test_case_conn_broken) @@ -162,6 +170,8 @@ TEST_CASE_SELF(ble_sm_test_case_conn_broken) TEST_ASSERT(ble_sm_test_gap_status == BLE_HS_ENOTCONN); TEST_ASSERT(!ble_sm_test_sec_state.encrypted); TEST_ASSERT(!ble_sm_test_sec_state.authenticated); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /***************************************************************************** @@ -223,6 +233,8 @@ TEST_CASE_SELF(ble_sm_test_case_peer_fail_inval) .reason = BLE_SM_ERR_INVAL, } }) ); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_sm_test_case_peer_lgcy_fail_confirm) @@ -274,12 +286,16 @@ TEST_CASE_SELF(ble_sm_test_case_peer_lgcy_fail_confirm) .reason = BLE_SM_ERR_CONFIRM_MISMATCH, } }) ); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_sm_test_case_peer_bonding_bad) { ble_sm_test_util_peer_bonding_bad(0x5684, 32); ble_sm_test_util_peer_bonding_bad(54325, 65437); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_sm_test_case_peer_sec_req_inval) @@ -314,6 +330,8 @@ TEST_CASE_SELF(ble_sm_test_case_peer_sec_req_inval) ble_sm_test_util_rx_sec_req(2, &sec_req, BLE_HS_EALREADY); TEST_ASSERT(ble_hs_test_util_prev_tx_queue_sz() == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } /***************************************************************************** @@ -375,12 +393,12 @@ TEST_CASE_SELF(ble_sm_test_case_us_fail_inval) }, }; ble_sm_test_util_us_fail_inval(¶ms); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_sm_gen_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_sm_test_case_f4(); ble_sm_test_case_f5(); ble_sm_test_case_f6(); diff --git a/nimble/host/test/src/ble_store_test.c b/nimble/host/test/src/ble_store_test.c index f205e3698..75d3a490f 100644 --- a/nimble/host/test/src/ble_store_test.c +++ b/nimble/host/test/src/ble_store_test.c @@ -164,6 +164,8 @@ TEST_CASE_SELF(ble_store_test_peers) for (i = 0; i < num_addrs; i++) { TEST_ASSERT(ble_addr_cmp(&peer_addrs[i], &secs[i].peer_addr) == 0); } + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_store_test_delete_peer) @@ -258,6 +260,8 @@ TEST_CASE_SELF(ble_store_test_delete_peer) /* Ensure all traces of first peer have been removed. */ ble_store_test_util_verify_peer_deleted(&secs[1].peer_addr); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_store_test_count) @@ -337,12 +341,16 @@ TEST_CASE_SELF(ble_store_test_count) rc = ble_store_util_count(BLE_STORE_OBJ_TYPE_CCCD, &count); TEST_ASSERT_FATAL(rc == 0); TEST_ASSERT(count == 1); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_store_test_overflow) { ble_store_test_util_overflow_sec(0); ble_store_test_util_overflow_sec(1); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_CASE_SELF(ble_store_test_clear) @@ -413,12 +421,12 @@ TEST_CASE_SELF(ble_store_test_clear) TEST_ASSERT(ble_store_test_util_count(BLE_STORE_OBJ_TYPE_OUR_SEC) == 0); TEST_ASSERT(ble_store_test_util_count(BLE_STORE_OBJ_TYPE_PEER_SEC) == 0); TEST_ASSERT(ble_store_test_util_count(BLE_STORE_OBJ_TYPE_CCCD) == 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_store_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_store_test_peers(); ble_store_test_delete_peer(); ble_store_test_count(); diff --git a/nimble/host/test/src/ble_uuid_test.c b/nimble/host/test/src/ble_uuid_test.c index 9da531d02..786e371ac 100644 --- a/nimble/host/test/src/ble_uuid_test.c +++ b/nimble/host/test/src/ble_uuid_test.c @@ -66,11 +66,11 @@ TEST_CASE_SELF(ble_uuid_test) rc = ble_uuid_cmp(uuid128_1, uuid128_2); TEST_ASSERT(rc != 0); + + ble_hs_test_util_assert_mbufs_freed(NULL); } TEST_SUITE(ble_uuid_test_suite) { - tu_suite_set_post_test_cb(ble_hs_test_util_post_test, NULL); - ble_uuid_test(); }