Skip to content

Commit 25dfa73

Browse files
committed
tests: Bluetooth: CAP: Add unittest for bt_cap_handover_[un]register
Add unittests for the bt_cap_handover_register_cb and bt_cap_handover_unregister_cb functions. Signed-off-by: Emil Gydesen <[email protected]>
1 parent 6f80c10 commit 25dfa73

File tree

2 files changed

+86
-0
lines changed

2 files changed

+86
-0
lines changed

tests/bluetooth/audio/cap_handover/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ target_include_directories(testbinary PRIVATE include)
1414

1515
target_sources(testbinary
1616
PRIVATE
17+
src/callbacks.c
1718
src/unicast_to_broadcast.c
1819
src/test_common.c
1920
)
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
/*
2+
* Copyright (c) 2025 Nordic Semiconductor ASA
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
#include <errno.h>
8+
#include <stddef.h>
9+
10+
#include <zephyr/bluetooth/audio/cap.h>
11+
#include <zephyr/fff.h>
12+
#include <zephyr/sys/util.h>
13+
14+
#include "cap_handover.h"
15+
#include "test_common.h"
16+
#include "ztest_assert.h"
17+
#include "ztest_test.h"
18+
19+
static void cap_handover_callbacks_test_suite_after(void *f)
20+
{
21+
bt_cap_handover_unregister_cb(&mock_cap_handover_cb);
22+
}
23+
24+
ZTEST_SUITE(cap_handover_callbacks_test_suite, NULL, NULL, NULL,
25+
cap_handover_callbacks_test_suite_after, NULL);
26+
27+
static ZTEST(cap_handover_callbacks_test_suite, test_handover_register_cb)
28+
{
29+
int err;
30+
31+
err = bt_cap_handover_register_cb(&mock_cap_handover_cb);
32+
zassert_equal(0, err, "Unexpected return value %d", err);
33+
}
34+
35+
static ZTEST(cap_handover_callbacks_test_suite, test_handover_register_cb_inval_param_null)
36+
{
37+
int err;
38+
39+
err = bt_cap_handover_register_cb(NULL);
40+
zassert_equal(-EINVAL, err, "Unexpected return value %d", err);
41+
}
42+
43+
static ZTEST(cap_handover_callbacks_test_suite, test_handover_register_cb_inval_double_register)
44+
{
45+
int err;
46+
47+
err = bt_cap_handover_register_cb(&mock_cap_handover_cb);
48+
zassert_equal(0, err, "Unexpected return value %d", err);
49+
50+
err = bt_cap_handover_register_cb(&mock_cap_handover_cb);
51+
zassert_equal(-EALREADY, err, "Unexpected return value %d", err);
52+
}
53+
54+
static ZTEST(cap_handover_callbacks_test_suite, test_handover_unregister_cb)
55+
{
56+
int err;
57+
58+
err = bt_cap_handover_register_cb(&mock_cap_handover_cb);
59+
zassert_equal(0, err, "Unexpected return value %d", err);
60+
61+
err = bt_cap_handover_unregister_cb(&mock_cap_handover_cb);
62+
zassert_equal(0, err, "Unexpected return value %d", err);
63+
}
64+
65+
static ZTEST(cap_handover_callbacks_test_suite, test_handover_unregister_cb_inval_param_null)
66+
{
67+
int err;
68+
69+
err = bt_cap_handover_unregister_cb(NULL);
70+
zassert_equal(-EINVAL, err, "Unexpected return value %d", err);
71+
}
72+
73+
static ZTEST(cap_handover_callbacks_test_suite, test_handover_unregister_cb_inval_double_unregister)
74+
{
75+
int err;
76+
77+
err = bt_cap_handover_register_cb(&mock_cap_handover_cb);
78+
zassert_equal(0, err, "Unexpected return value %d", err);
79+
80+
err = bt_cap_handover_unregister_cb(&mock_cap_handover_cb);
81+
zassert_equal(0, err, "Unexpected return value %d", err);
82+
83+
err = bt_cap_handover_unregister_cb(&mock_cap_handover_cb);
84+
zassert_equal(-EINVAL, err, "Unexpected return value %d", err);
85+
}

0 commit comments

Comments
 (0)