diff --git a/tests/bluetooth/audio/codec/src/main.c b/tests/bluetooth/audio/codec/src/main.c index e4727dfec78..5ad50c1c0c6 100644 --- a/tests/bluetooth/audio/codec/src/main.c +++ b/tests/bluetooth/audio/codec/src/main.c @@ -218,3 +218,77 @@ ZTEST(audio_codec_test_suite, test_bt_audio_codec_meta_get_vendor) zassert_equal(ret, ARRAY_SIZE(expected_data), "Unexpected return value %d", ret); zassert_mem_equal(expected_data, vendor_meta, ARRAY_SIZE(expected_data)); } + +ZTEST(audio_codec_test_suite, test_bt_audio_codec_cap_get_freq) +{ + const struct bt_audio_codec_cap codec_cap = BT_AUDIO_CODEC_CAP_LC3( + BT_AUDIO_CODEC_LC3_FREQ_16KHZ, BT_AUDIO_CODEC_LC3_DURATION_10, + BT_AUDIO_CODEC_LC3_CHAN_COUNT_SUPPORT(1), 40U, 120U, 2U, + (BT_AUDIO_CONTEXT_TYPE_CONVERSATIONAL | BT_AUDIO_CONTEXT_TYPE_MEDIA)); + + int ret; + + ret = bt_audio_codec_cap_get_freq(&codec_cap); + zassert_equal(ret, 4, "Unexpected return value %d", ret); +} + +ZTEST(audio_codec_test_suite, test_bt_audio_codec_cap_get_frame_duration) +{ + const struct bt_audio_codec_cap codec_cap = BT_AUDIO_CODEC_CAP_LC3( + BT_AUDIO_CODEC_LC3_FREQ_16KHZ, BT_AUDIO_CODEC_LC3_DURATION_10, + BT_AUDIO_CODEC_LC3_CHAN_COUNT_SUPPORT(1), 40U, 120U, 2U, + (BT_AUDIO_CONTEXT_TYPE_CONVERSATIONAL | BT_AUDIO_CONTEXT_TYPE_MEDIA)); + + int ret; + + ret = bt_audio_codec_cap_get_frame_duration(&codec_cap); + zassert_equal(ret, 2, "Unexpected return value %d", ret); +} + +ZTEST(audio_codec_test_suite, test_bt_audio_codec_cap_get_supported_audio_chan_counts) +{ + const struct bt_audio_codec_cap codec_cap = BT_AUDIO_CODEC_CAP_LC3( + BT_AUDIO_CODEC_LC3_FREQ_16KHZ, BT_AUDIO_CODEC_LC3_DURATION_10, + BT_AUDIO_CODEC_LC3_CHAN_COUNT_SUPPORT(2), 40U, 120U, 2U, + (BT_AUDIO_CONTEXT_TYPE_CONVERSATIONAL | BT_AUDIO_CONTEXT_TYPE_MEDIA)); + + int ret; + + ret = bt_audio_codec_cap_get_supported_audio_chan_counts(&codec_cap); + zassert_equal(ret, 2, "Unexpected return value %d", ret); +} + +ZTEST(audio_codec_test_suite, test_bt_audio_codec_cap_get_octets_per_frame) +{ + struct bt_audio_codec_octets_per_codec_frame expected = { + .min = 40U, + .max = 120U, + }; + const struct bt_audio_codec_cap codec_cap = BT_AUDIO_CODEC_CAP_LC3( + BT_AUDIO_CODEC_LC3_FREQ_16KHZ, BT_AUDIO_CODEC_LC3_DURATION_10, + BT_AUDIO_CODEC_LC3_CHAN_COUNT_SUPPORT(1), 40U, 120U, 2U, + (BT_AUDIO_CONTEXT_TYPE_CONVERSATIONAL | BT_AUDIO_CONTEXT_TYPE_MEDIA)); + struct bt_audio_codec_octets_per_codec_frame codec_frame; + + int ret; + + ret = bt_audio_codec_cap_get_octets_per_frame(&codec_cap, &codec_frame); + zassert_equal(ret, 0, "Unexpected return value %d", ret); + zassert_equal(codec_frame.min, expected.min, "Unexpected minimum value %d", + codec_frame.min); + zassert_equal(codec_frame.max, expected.max, "Unexpected maximum value %d", + codec_frame.max); +} + +ZTEST(audio_codec_test_suite, test_bt_audio_codec_cap_get_max_codec_frames_per_sdu) +{ + const struct bt_audio_codec_cap codec_cap = BT_AUDIO_CODEC_CAP_LC3( + BT_AUDIO_CODEC_LC3_FREQ_16KHZ, BT_AUDIO_CODEC_LC3_DURATION_10, + BT_AUDIO_CODEC_LC3_CHAN_COUNT_SUPPORT(1), 40U, 120U, 2U, + (BT_AUDIO_CONTEXT_TYPE_CONVERSATIONAL | BT_AUDIO_CONTEXT_TYPE_MEDIA)); + + int ret; + + ret = bt_audio_codec_cap_get_max_codec_frames_per_sdu(&codec_cap); + zassert_equal(ret, 2, "Unexpected return value %d", ret); +}