Bluetooth: CAP: Do not require CAS unless necessary

Removes the requirement that CAS is found on the remove
device for ad-hoc sets. This makes the CAP API more
versatile as it allows applications to use it with
remote non-CAP devices.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
This commit is contained in:
Emil Gydesen 2024-05-29 17:14:52 +02:00 committed by Carles Cufí
commit 1af717430a
7 changed files with 74 additions and 144 deletions

View file

@ -91,9 +91,6 @@ ZTEST_F(cap_commander_test_micp, test_commander_change_microphone_gain_setting)
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_micp_mic_ctlr *mic_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_micp_mic_ctlr_discover(&fixture->conns[i], &mic_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -127,9 +124,6 @@ ZTEST_F(cap_commander_test_micp, test_commander_change_microphone_gain_setting_d
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_micp_mic_ctlr *mic_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_micp_mic_ctlr_discover(&fixture->conns[i], &mic_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -197,7 +191,7 @@ ZTEST_F(cap_commander_test_micp, test_commander_change_microphone_gain_setting_i
struct bt_cap_commander_change_microphone_gain_setting_member_param
member_params[ARRAY_SIZE(fixture->conns)];
const struct bt_cap_commander_change_microphone_gain_setting_param param = {
.type = BT_CAP_SET_TYPE_AD_HOC,
.type = BT_CAP_SET_TYPE_CSIP,
.param = member_params,
.count = ARRAY_SIZE(member_params),
};
@ -241,11 +235,6 @@ ZTEST_F(cap_commander_test_micp, test_commander_change_microphone_gain_setting_i
err = bt_cap_commander_register_cb(&mock_cap_commander_cb);
zassert_equal(0, err, "Unexpected return value %d", err);
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
}
err = bt_cap_commander_change_microphone_gain_setting(&param);
zassert_equal(-EINVAL, err, "Unexpected return value %d", err);
}
@ -313,9 +302,6 @@ ZTEST_F(cap_commander_test_micp, test_commander_change_microphone_mute_state)
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_micp_mic_ctlr *mic_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_micp_mic_ctlr_discover(&fixture->conns[i], &mic_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -348,9 +334,6 @@ ZTEST_F(cap_commander_test_micp, test_commander_change_microphone_mute_state_dou
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_micp_mic_ctlr *mic_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_micp_mic_ctlr_discover(&fixture->conns[i], &mic_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -417,7 +400,7 @@ ZTEST_F(cap_commander_test_micp, test_commander_change_microphone_mute_state_inv
{
union bt_cap_set_member members[ARRAY_SIZE(fixture->conns)];
const struct bt_cap_commander_change_microphone_mute_state_param param = {
.type = BT_CAP_SET_TYPE_AD_HOC,
.type = BT_CAP_SET_TYPE_CSIP,
.members = members,
.count = ARRAY_SIZE(fixture->conns),
.mute = true,
@ -460,11 +443,6 @@ ZTEST_F(cap_commander_test_micp, test_commander_change_microphone_mute_state_inv
err = bt_cap_commander_register_cb(&mock_cap_commander_cb);
zassert_equal(0, err, "Unexpected return value %d", err);
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
}
err = bt_cap_commander_change_microphone_mute_state(&param);
zassert_equal(-EINVAL, err, "Unexpected return value %d", err);
}

View file

@ -89,9 +89,6 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume)
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_vcp_vol_ctlr *vol_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_vcp_vol_ctlr_discover(&fixture->conns[i], &vol_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -124,9 +121,6 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_double)
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_vcp_vol_ctlr *vol_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_vcp_vol_ctlr_discover(&fixture->conns[i], &vol_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -191,7 +185,7 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_inval_missing_cas)
{
union bt_cap_set_member members[ARRAY_SIZE(fixture->conns)];
const struct bt_cap_commander_change_volume_param param = {
.type = BT_CAP_SET_TYPE_AD_HOC,
.type = BT_CAP_SET_TYPE_CSIP,
.members = members,
.count = ARRAY_SIZE(fixture->conns),
.volume = 177,
@ -234,11 +228,6 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_inval_missing_vcs)
err = bt_cap_commander_register_cb(&mock_cap_commander_cb);
zassert_equal(0, err, "Unexpected return value %d", err);
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
}
err = bt_cap_commander_change_volume(&param);
zassert_equal(-EINVAL, err, "Unexpected return value %d", err);
}
@ -303,9 +292,6 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_offset)
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_vcp_vol_ctlr *vol_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_vcp_vol_ctlr_discover(&fixture->conns[i], &vol_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -339,9 +325,6 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_offset_double)
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_vcp_vol_ctlr *vol_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_vcp_vol_ctlr_discover(&fixture->conns[i], &vol_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -407,7 +390,7 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_offset_inval_missin
struct bt_cap_commander_change_volume_offset_member_param
member_params[ARRAY_SIZE(fixture->conns)];
const struct bt_cap_commander_change_volume_offset_param param = {
.type = BT_CAP_SET_TYPE_AD_HOC,
.type = BT_CAP_SET_TYPE_CSIP,
.param = member_params,
.count = ARRAY_SIZE(member_params),
};
@ -451,11 +434,6 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_offset_inval_missin
err = bt_cap_commander_register_cb(&mock_cap_commander_cb);
zassert_equal(0, err, "Unexpected return value %d", err);
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
}
err = bt_cap_commander_change_volume_offset(&param);
zassert_equal(-EINVAL, err, "Unexpected return value %d", err);
}
@ -560,9 +538,6 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_mute_state)
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_vcp_vol_ctlr *vol_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_vcp_vol_ctlr_discover(&fixture->conns[i], &vol_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -595,9 +570,6 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_mute_state_double)
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
struct bt_vcp_vol_ctlr *vol_ctlr; /* We don't care about this */
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
err = bt_vcp_vol_ctlr_discover(&fixture->conns[i], &vol_ctlr);
zassert_equal(0, err, "Unexpected return value %d", err);
}
@ -662,7 +634,7 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_mute_state_inval_mi
{
union bt_cap_set_member members[ARRAY_SIZE(fixture->conns)];
const struct bt_cap_commander_change_volume_mute_state_param param = {
.type = BT_CAP_SET_TYPE_AD_HOC,
.type = BT_CAP_SET_TYPE_CSIP,
.members = members,
.count = ARRAY_SIZE(fixture->conns),
.mute = true,
@ -705,11 +677,6 @@ ZTEST_F(cap_commander_test_vcp, test_commander_change_volume_mute_state_inval_mi
err = bt_cap_commander_register_cb(&mock_cap_commander_cb);
zassert_equal(0, err, "Unexpected return value %d", err);
for (size_t i = 0; i < ARRAY_SIZE(fixture->conns); i++) {
err = bt_cap_commander_discover(&fixture->conns[i]);
zassert_equal(0, err, "Unexpected return value %d", err);
}
err = bt_cap_commander_change_volume_mute_state(&param);
zassert_equal(-EINVAL, err, "Unexpected return value %d", err);
}