Commit Graph

858 Commits

Author SHA1 Message Date
Iulia Tanasescu
eaff473cd2 shared/bap: Use enabling state for bcast sink streams
This updates the stream state transition from CONFIG to ENABLING,
on enable for Broadcast Sink streams. This is done to differentiate
between streams discovered in the BASE after short-lived PA sync
and streams that have been selected and enabled by the user.
2024-10-25 11:36:45 -04:00
Luiz Augusto von Dentz
f9f98c0b2a test-uhid: Add call to bt_uhid_unregister_all
This adds a call to bt_uhid_unregister_all so it tests if notification
callback end up calling that.
2024-09-16 16:23:30 -04:00
Luiz Augusto von Dentz
4ed7060ca9 test-uhid: Fix attempting to run when bt_uhid is NULL
When running under root there is a possibility the bt_uhid_new_default
doesn't work (e.g. fakeroot) in which case the test shall be aborted
since it is likely a device specific test case which would require
proper permissions to run.
2024-08-23 11:17:27 -04:00
Luiz Augusto von Dentz
3b7f4b4d3c test-uhid: Add support for device specific testing
This enables device specific testing and switch to run
bt_uhid_new_default when running as root so the actual kernel driver is
used:

input: MX Anywhere 3 as /devices/virtual/misc/uhid/0005:046D:B025.0031/input/input86
logitech-hidpp-device 0005:046D:B025.0031: input,hidraw10: BLUETOOTH HID v0.14 Mouse [MX Anywhere 3] on 00:00:00:00:00:00
2024-08-14 11:11:17 -04:00
Luiz Augusto von Dentz
ee39d01fb9 shared/uhid: Fix registering UHID_START multiple times
UHID_START callback shall only be registered once otherwise there is a
risk of processing input queue multiple times.
2024-08-13 10:33:42 -04:00
Iulia Tanasescu
bbcf4891cd shared/bap: Remove unused param from bt_bap_verify_bis
This removes the codec parameter from bt_bap_verify_bis,
since it is not used.
2024-07-18 14:20:51 -04:00
Iulia Tanasescu
679349fbc9 shared/bap: Update bt_bap_verify_bis to receive caps
This updates bt_bap_verify_bis to receive the already merged L2 and L3
capabilities, instead of computing it internally.
2024-07-18 14:20:50 -04:00
Iulia Tanasescu
944909f2b2 test-bap: Add Broadcast Source STR MBIS tests
4.14.3 Broadcast Audio Stream with Multiple BISes - Source

     Test Purpose:
     Verify that a Broadcast Source IUT can stream multiple
     BISes to a Broadcast Sink.

     Test Case Configuration:
     BAP/BSRC/STR/BV-18-C [BSRC, Multiple BISes, LC3 8_1]
     BAP/BSRC/STR/BV-19-C [BSRC, Multiple BISes, LC3 8_2]
     BAP/BSRC/STR/BV-20-C [BSRC, Multiple BISes, LC3 16_1]
     BAP/BSRC/STR/BV-21-C [BSRC, Multiple BISes, LC3 16_2]
     BAP/BSRC/STR/BV-22-C [BSRC, Multiple BISes, LC3 24_1]
     BAP/BSRC/STR/BV-23-C [BSRC, Multiple BISes, LC3 24_2]
     BAP/BSRC/STR/BV-24-C [BSRC, Multiple BISes, LC3 32_1]
     BAP/BSRC/STR/BV-25-C [BSRC, Multiple BISes, LC3 32_2]
     BAP/BSRC/STR/BV-26-C [BSRC, Multiple BISes, LC3 44.1_1]
     BAP/BSRC/STR/BV-27-C [BSRC, Multiple BISes, LC3 44.1_2]
     BAP/BSRC/STR/BV-28-C [BSRC, Multiple BISes, LC3 48_1]
     BAP/BSRC/STR/BV-29-C [BSRC, Multiple BISes, LC3 48_2]
     BAP/BSRC/STR/BV-30-C [BSRC, Multiple BISes, LC3 48_3]
     BAP/BSRC/STR/BV-31-C [BSRC, Multiple BISes, LC3 48_4]
     BAP/BSRC/STR/BV-32-C [BSRC, Multiple BISes, LC3 48_5]
     BAP/BSRC/STR/BV-33-C [BSRC, Multiple BISes, LC3 48_6]
     BAP/BSRC/STR/BV-34-C [BSRC, Multiple BISes, VS]

     Pass verdict:
     If the Codec ID is LC3, the IUT sends encoded LC3 audio
     data in BIS Data PDUs on each synchronized BIS.

     If the Codec ID is a vendor-specific Codec ID, the IUT
     sends BIS Data PDUs on each synchronized BIS. The parameters
     included in the Codec_Specific_Configuration data are as
     defined in TSPX_VS_Codec_Specific_Configuration.

     If the Codec ID is LC3, each parameter included in
     Codec_Specific_Configuration data is formatted in an LTV
     structure with the length, type, and value specified in
     Table 4.83.

Test Summary
------------
BAP/BSRC/STR/BV-18-C [BSRC, Multiple BISes, LC3 8_1] Passed
BAP/BSRC/STR/BV-19-C [BSRC, Multiple BISes, LC3 8_2] Passed
BAP/BSRC/STR/BV-20-C [BSRC, Multiple BISes, LC3 16_1] Passed
BAP/BSRC/STR/BV-21-C [BSRC, Multiple BISes, LC3 16_2] Passed
BAP/BSRC/STR/BV-22-C [BSRC, Multiple BISes, LC3 24_1] Passed
BAP/BSRC/STR/BV-23-C [BSRC, Multiple BISes, LC3 24_2] Passed
BAP/BSRC/STR/BV-24-C [BSRC, Multiple BISes, LC3 32_1] Passed
BAP/BSRC/STR/BV-25-C [BSRC, Multiple BISes, LC3 32_2] Passed
BAP/BSRC/STR/BV-26-C [BSRC, Multiple BISes, LC3 44.1_1] Passed
BAP/BSRC/STR/BV-27-C [BSRC, Multiple BISes, LC3 44.1_2] Passed
BAP/BSRC/STR/BV-28-C [BSRC, Multiple BISes, LC3 48_1] Passed
BAP/BSRC/STR/BV-29-C [BSRC, Multiple BISes, LC3 48_2] Passed
BAP/BSRC/STR/BV-30-C [BSRC, Multiple BISes, LC3 48_3] Passed
BAP/BSRC/STR/BV-31-C [BSRC, Multiple BISes, LC3 48_4] Passed
BAP/BSRC/STR/BV-32-C [BSRC, Multiple BISes, LC3 48_5] Passed
BAP/BSRC/STR/BV-33-C [BSRC, Multiple BISes, LC3 48_6] Passed
BAP/BSRC/STR/BV-34-C [BSRC, Multiple BISes, VS]      Passed
2024-06-25 09:31:14 -04:00
Iulia Tanasescu
409251a95b test-bap: Add support to config multiple bsrc streams
This adds support to configure multiple bsrc streams.
2024-06-25 09:31:11 -04:00
Iulia Tanasescu
98013b74e5 test-bap: Move BASE defines to lc3.h
This moves the BASE related defines introduced in
test-bap to lc3.h.
2024-06-25 09:31:10 -04:00
Iulia Tanasescu
7c619d864a test-bap: Add Broadcast Source STR one BIS tests
4.14.1 Broadcast Audio Stream with One BIS - Source (page 180):

    Test Purpose:
    Verify that a Broadcast Source IUT can stream one BIS
    to a Broadcast Sink. The verification is performed for
    each Config Settings in turn.

    Test Case Configuration:
    BAP/BSRC/STR/BV-01-C [BSRC, LC3 8_1]
    BAP/BSRC/STR/BV-02-C [BSRC, LC3 8_2]
    BAP/BSRC/STR/BV-03-C [BSRC, LC3 16_1]
    BAP/BSRC/STR/BV-04-C [BSRC, LC3 16_2]
    BAP/BSRC/STR/BV-05-C [BSRC, LC3 24_1]
    BAP/BSRC/STR/BV-06-C [BSRC, LC3 24_2]
    BAP/BSRC/STR/BV-07-C [BSRC, LC3 32_1
    BAP/BSRC/STR/BV-08-C [BSRC, LC3 32_2]
    BAP/BSRC/STR/BV-09-C [BSRC, LC3 44.1_1]
    BAP/BSRC/STR/BV-10-C [BSRC, LC3 44.1_2]
    BAP/BSRC/STR/BV-11-C [BSRC, LC3 48_1]
    BAP/BSRC/STR/BV-12-C [BSRC, LC3 48_2]
    BAP/BSRC/STR/BV-13-C [BSRC, LC3 48_3]
    BAP/BSRC/STR/BV-14-C [BSRC, LC3 48_4]
    BAP/BSRC/STR/BV-15-C [BSRC, LC3 48_5]
    BAP/BSRC/STR/BV-16-C [BSRC, LC3 48_6]
    BAP/BSRC/STR/BV-17-C [BSRC, VS]

    Pass verdict:
    If the Codec ID is LC3, the IUT sends encoded LC3 audio
    data in BIS Data PDUs on the broadcast Audio Stream. The
    audio data is formatted using the LC3 Media Packet format.

    If the Codec ID is a vendor-specific Codec ID, the IUT
    sends BIS Data PDUs on the broadcast Audio Stream. The
    parameters included in the Codec_Specific_Configuration
    data are as defined in TSPX_VS_Codec_Specific_Configuration.

    If the Codec ID is LC3, each parameter included in
    Codec_Specific_Configuration data is formatted in an LTV
    structure with the length, type, and value specified in
    Table 4.79.

Test Summary
------------
BAP/BSRC/STR/BV-01-C [BSRC, LC3 8_1]                 Passed
BAP/BSRC/STR/BV-02-C [BSRC, LC3 8_2]                 Passed
BAP/BSRC/STR/BV-03-C [BSRC, LC3 16_1]                Passed
BAP/BSRC/STR/BV-04-C [BSRC, LC3 16_2]                Passed
BAP/BSRC/STR/BV-05-C [BSRC, LC3 24_1]                Passed
BAP/BSRC/STR/BV-06-C [BSRC, LC3 24_2]                Passed
BAP/BSRC/STR/BV-07-C [BSRC, LC3 32_1]                Passed
BAP/BSRC/STR/BV-08-C [BSRC, LC3 32_2]                Passed
BAP/BSRC/STR/BV-09-C [BSRC, LC3 44.1_1]              Passed
BAP/BSRC/STR/BV-10-C [BSRC, LC3 44.1_2]              Passed
BAP/BSRC/STR/BV-11-C [BSRC, LC3 48_1]                Passed
BAP/BSRC/STR/BV-12-C [BSRC, LC3 48_2]                Passed
BAP/BSRC/STR/BV-13-C [BSRC, LC3 48_3]                Passed
BAP/BSRC/STR/BV-14-C [BSRC, LC3 48_4]                Passed
BAP/BSRC/STR/BV-15-C [BSRC, LC3 48_5]                Passed
BAP/BSRC/STR/BV-16-C [BSRC, LC3 48_6]                Passed
BAP/BSRC/STR/BV-17-C [BSRC, VS]                      Passed
2024-06-05 14:47:10 -04:00
Iulia Tanasescu
3f747788c1 test-bap: Add Broadcast Source Release test
BAP/BSRC/SCC/BV-37-C [Releases Broadcast] (page 176):

    Test Purpose:
    Verify that a Broadcast Source IUT can release a broadcast
    Audio Stream and transition from Configured state to Idle
    state.

    Pass verdict:
    The IUT stops transmitting periodic advertising.

Test Summary
------------
BAP/BSRC/SCC/BV-37-C [Releases Broadcast]            Passed
2024-06-03 09:21:31 -04:00
Iulia Tanasescu
06a905d6b8 test-bap: Add Broadcast Source Disable test
BAP/BSRC/SCC/BV-36-C [Disables Broadcast] (page 176):

    Test Purpose:
    Verify that a Broadcast Source IUT can disable a broadcast
    Audio Stream.

    Pass verdict:
    The IUT sends a BIG_TERMINATE_IND PDU.

Test Summary
------------
BAP/BSRC/SCC/BV-36-C [Disables Broadcast]            Passed
2024-06-03 09:20:56 -04:00
Iulia Tanasescu
bb30b19901 test-bap: Add Broadcast Source Establish test
BAP/BSRC/SCC/BV-35-C [Establishes Broadcast] (page 175):

    Test Purpose:
    Verify that a Broadcast Source IUT can establish a broadcast
    Audio Stream.

    Pass verdict:
    The IUT sends AUX_SYNC_IND PDUs with an Extended Header
    containing BIGInfo in the ACAD field.

    The IUT sends BIS Data PDUs over the broadcast Audio
    Stream.

Test Summary
------------
BAP/BSRC/SCC/BV-35-C [Establishes Broadcast]         Passed
2024-06-03 09:20:21 -04:00
Iulia Tanasescu
6cb268f47f test-bap: Update bsrc_state to just handle CONFIG state
This updates bsrc_state to just handle the CONFIG stream state. Dedicated
state changed callbacks will be implemented for tests that require streams
to be established, disabled etc.
2024-06-03 09:19:46 -04:00
Silviu Florian Barbulescu
5da00f7129 shared/bap: Update BAP Broadcast Source state machine
Update BAP Broadcast Source state machine states to use BAP define states
 for source Idle, Config, Streaming, and an intermediary state enabling.

Updated test-bap too.
2024-05-23 12:15:02 -04:00
Luiz Augusto von Dentz
6e51acb0e8 test-bap: Rename num_str to streams
This renames test_config.num_str to test_config.streams just be clearer
on what is the intent of the field.
2024-05-21 10:44:55 -04:00
Iulia Tanasescu
c41943fe39 test-bap: Add Broadcast Sink STR MBIS tests
4.14.4 Broadcast Sink Receives Audio Data Over Multiple BISes (page 193):

    Test Purpose:
    Verify that a Broadcast Sink IUT can receive audio data over
    multiple BISes from a Broadcast Source. The verification is
    performed for each set of parameters in turn.

    Test Case Configuration:
    BAP/BSNK/STR/BV-18-C [BSNK, Multiple BISes, LC3 8_1]
    BAP/BSNK/STR/BV-19-C [BSNK, Multiple BISes, LC3 8_2]
    BAP/BSNK/STR/BV-20-C [BSNK, Multiple BISes, LC3 16_1]
    BAP/BSNK/STR/BV-21-C [BSNK, Multiple BISes, LC3 16_2]
    BAP/BSNK/STR/BV-22-C [BSNK, Multiple BISes, LC3 24_1]
    BAP/BSNK/STR/BV-23-C [BSNK, Multiple BISes, LC3 24_2]
    BAP/BSNK/STR/BV-24-C [BSNK, Multiple BISes, LC3 32_1]
    BAP/BSNK/STR/BV-25-C [BSNK, Multiple BISes, LC3 32_2]
    BAP/BSNK/STR/BV-26-C [BSNK, Multiple BISes, LC3 44.1_1]
    BAP/BSNK/STR/BV-27-C [BSNK, Multiple BISes, LC3 44.1_2]
    BAP/BSNK/STR/BV-28-C [BSNK, Multiple BISes, LC3 48_1]
    BAP/BSNK/STR/BV-29-C [BSNK, Multiple BISes, LC3 48_2]
    BAP/BSNK/STR/BV-30-C [BSNK, Multiple BISes, LC3 48_3]
    BAP/BSNK/STR/BV-31-C [BSNK, Multiple BISes, LC3 48_4]
    BAP/BSNK/STR/BV-32-C [BSNK, Multiple BISes, LC3 48_5]
    BAP/BSNK/STR/BV-33-C [BSNK, Multiple BISes, LC3 48_6]
    BAP/BSNK/STR/BV-34-C [BSNK, Multiple BISes, VS]

    Pass verdict:
    The IUT synchronizes to the Lower Tester (the Link Layer
    receives a BIS Data PDU). The host on the IUT receives an
    LE BIG Sync Established event.

    If the Codec ID is LC3, the IUT receives encoded LC3 audio
    data in BIS Data PDUs on each synchronized BIS. The audio
    data is formatted using the LC3 Media Packet format.

    If the Codec ID is a vendor-specific Codec ID, the IUT receives
    BIS Data PDUs on each synchronized BIS. The parameters included
    in the Codec_Specific_Configuration data are as defined in
    TSPX_VS_Codec_Specific_Configuration.

    If the Codec ID is LC3, each parameter included in
    Codec_Specific_Configuration data is formatted in an LTV structure
    with the length, type, and value specified in Table 4.85.

Test Summary
------------
BAP/BSNK/STR/BV-18-C [BSNK, Multiple BISes, LC3 8_1]    Passed
BAP/BSNK/STR/BV-19-C [BSNK, Multiple BISes, LC3 8_2]    Passed
BAP/BSNK/STR/BV-20-C [BSNK, Multiple BISes, LC3 16_1]   Passed
BAP/BSNK/STR/BV-21-C [BSNK, Multiple BISes, LC3 16_2]   Passed
BAP/BSNK/STR/BV-22-C [BSNK, Multiple BISes, LC3 24_1]   Passed
BAP/BSNK/STR/BV-23-C [BSNK, Multiple BISes, LC3 24_2]   Passed
BAP/BSNK/STR/BV-24-C [BSNK, Multiple BISes, LC3 32_1]   Passed
BAP/BSNK/STR/BV-25-C [BSNK, Multiple BISes, LC3 32_2]   Passed
BAP/BSNK/STR/BV-26-C [BSNK, Multiple BISes, LC3 44.1_1] Passed
BAP/BSNK/STR/BV-27-C [BSNK, Multiple BISes, LC3 44.1_2] Passed
BAP/BSNK/STR/BV-28-C [BSNK, Multiple BISes, LC3 48_1]   Passed
BAP/BSNK/STR/BV-29-C [BSNK, Multiple BISes, LC3 48_2]   Passed
BAP/BSNK/STR/BV-30-C [BSNK, Multiple BISes, LC3 48_3]   Passed
BAP/BSNK/STR/BV-31-C [BSNK, Multiple BISes, LC3 48_4]   Passed
BAP/BSNK/STR/BV-32-C [BSNK, Multiple BISes, LC3 48_5]   Passed
BAP/BSNK/STR/BV-33-C [BSNK, Multiple BISes, LC3 48_6]   Passed
BAP/BSNK/STR/BV-34-C [BSNK, Multiple BISes, VS]         Passed
2024-05-21 10:38:07 -04:00
Iulia Tanasescu
25eaeeb7e1 test-bap: Add support for multiple bcast streams
This adds support for implementing Broadcast tests that require multiple
streams to be configured (for example, 4.14.4 Broadcast Sink Receives
Audio Data Over Multiple BISes).

The number of required streams is added inside the test_config struct.
The bsnk_pac_added and the bsnk_state_str callbacks have been updated
to support multiple streams.
2024-05-21 10:38:05 -04:00
Iulia Tanasescu
41340a74bf test-bap: Keep streams queue in test_data
Some BAP test configurations require multiple streams to be created
(for example, 4.14.4 Broadcast Sink Receives Audio Data Over Multiple
BISes).

This replaces the stream pointer inside test_data with a queue of
streams, where each created stream is pushed.

Unicast callbacks where the created stream needs to be accessed
already pass the stream reference as parameter, so there is no need
to access it from test_data.
2024-05-21 10:38:04 -04:00
Iulia Tanasescu
a2438e46f8 test-bap: Add Broadcast Sink STR one BIS tests
4.14.2 Broadcast Audio Stream with One BIS - Sink (page 189):

    Test Purpose:
    Verify that a Broadcast Sink IUT can stream one BIS from a
    Broadcast Source. Verification is performed for each set of
    codec specific capabilities in turn.

    Test Case Configuration:
    BAP/BSNK/STR/BV-01-C [BSNK, LC3 8_1]
    BAP/BSNK/STR/BV-02-C [BSNK, LC3 8_2]
    BAP/BSNK/STR/BV-03-C [BSNK, LC3 16_1]
    BAP/BSNK/STR/BV-04-C [BSNK, LC3 16_2]
    BAP/BSNK/STR/BV-05-C [BSNK, LC3 24_1]
    BAP/BSNK/STR/BV-06-C [BSNK, LC3 24_2]
    BAP/BSNK/STR/BV-07-C [BSNK, LC3 32_1]
    BAP/BSNK/STR/BV-08-C [BSNK, LC3 32_2]
    BAP/BSNK/STR/BV-09-C [BSNK, LC3 44.1_1]
    BAP/BSNK/STR/BV-10-C [BSNK, LC3 44.1_2]
    BAP/BSNK/STR/BV-11-C [BSNK, LC3 48_1]
    BAP/BSNK/STR/BV-12-C [BSNK, LC3 48_2]
    BAP/BSNK/STR/BV-13-C [BSNK, LC3 48_3]
    BAP/BSNK/STR/BV-14-C [BSNK, LC3 48_4]
    BAP/BSNK/STR/BV-15-C [BSNK, LC3 48_5]
    BAP/BSNK/STR/BV-16-C [BSNK, LC3 48_6]
    BAP/BSNK/STR/BV-17-C [BSNK, VS]

    Pass verdict:
    The IUT synchronizes to the Lower Tester (the Link Layer
    receives a BIS Data PDU). The host on the IUT receives an
    LE BIG Sync Established event.

    If the Codec ID is LC3, the IUT receives BIS Data PDUs on
    the broadcast Audio Stream containing encoded LC3 audio data
    formatted using the LC3 Media Packet format.

    If the Codec ID is a vendor-specific Codec ID, the IUT
    receives BIS Data PDUs on the broadcast Audio Stream.
    The parameters included in the Codec_Specific_Configuration
    data are as defined in TSPX_VS_Codec_Specific_Configuration.

    If the Codec ID is LC3, each parameter included in
    Codec_Specific_Configuration data is formatted in an LTV
    structure with the length, type, and value specified in
    Table 4.81.

Test Summary
------------
BAP/BSNK/STR/BV-01-C [BSNK, LC3 8_1]                 Passed
BAP/BSNK/STR/BV-02-C [BSNK, LC3 8_2]                 Passed
BAP/BSNK/STR/BV-03-C [BSNK, LC3 16_1]                Passed
BAP/BSNK/STR/BV-04-C [BSNK, LC3 16_2]                Passed
BAP/BSNK/STR/BV-05-C [BSNK, LC3 24_1]                Passed
BAP/BSNK/STR/BV-06-C [BSNK, LC3 24_2]                Passed
BAP/BSNK/STR/BV-07-C [BSNK, LC3 32_1]                Passed
BAP/BSNK/STR/BV-08-C [BSNK, LC3 32_2]                Passed
BAP/BSNK/STR/BV-09-C [BSNK, LC3 44.1_1]              Passed
BAP/BSNK/STR/BV-10-C [BSNK, LC3 44.1_2]              Passed
BAP/BSNK/STR/BV-11-C [BSNK, LC3 48_1]                Passed
BAP/BSNK/STR/BV-12-C [BSNK, LC3 48_2]                Passed
BAP/BSNK/STR/BV-13-C [BSNK, LC3 48_3]                Passed
BAP/BSNK/STR/BV-14-C [BSNK, LC3 48_4]                Passed
BAP/BSNK/STR/BV-15-C [BSNK, LC3 48_5]                Passed
BAP/BSNK/STR/BV-16-C [BSNK, LC3 48_6]                Passed
BAP/BSNK/STR/BV-17-C [BSNK, VS]                      Passed
2024-05-20 15:44:43 -04:00
Luiz Augusto von Dentz
e4f6c68f2a shared/uhid: Add special handling for non-keyboards
This adds special handling for non-keyboards so they are destroyed when
disconnected rather than keeping their device node around.

Fixes: https://github.com/bluez/bluez/issues/848
2024-05-20 14:14:11 -04:00
Iulia Tanasescu
62d38d6c9e test-bap: Add Broadcast Sink SCC tests
4.13.2 Broadcast Sink Synchronizes to PA (page 177)

     Test Purpose:
     Verify that a Broadcast Sink IUT can synchronize to the PA
     associated with a broadcast Audio Stream transmitted by a
     Broadcast Source.

     Test Case Configuration:
     BAP/BSNK/SCC/BV-01-C [Sync to PA, LC3 8_1_1]
     BAP/BSNK/SCC/BV-02-C [Sync to PA, LC3 8_2_1]
     BAP/BSNK/SCC/BV-03-C [Sync to PA, LC3 16_1_1]
     BAP/BSNK/SCC/BV-04-C [Sync to PA, LC3 16_2_1]
     BAP/BSNK/SCC/BV-05-C [Sync to PA, LC3 24_1_1]
     BAP/BSNK/SCC/BV-06-C [Sync to PA, LC3 24_2_1]
     BAP/BSNK/SCC/BV-07-C [Sync to PA, LC3 32_1_1]
     BAP/BSNK/SCC/BV-08-C [Sync to PA, LC3 32_2_1]
     BAP/BSNK/SCC/BV-09-C [Sync to PA, LC3 44.1_1_1]
     BAP/BSNK/SCC/BV-10-C [Sync to PA, LC3 44.1_2_1]
     BAP/BSNK/SCC/BV-11-C [Sync to PA, LC3 48_1_1]
     BAP/BSNK/SCC/BV-12-C [Sync to PA, LC3 48_2_1]
     BAP/BSNK/SCC/BV-13-C [Sync to PA, LC3 48_3_1]
     BAP/BSNK/SCC/BV-14-C [Sync to PA, LC3 48_4_1]
     BAP/BSNK/SCC/BV-15-C [Sync to PA, LC3 48_5_1]
     BAP/BSNK/SCC/BV-16-C [Sync to PA, LC3 48_6_1]
     BAP/BSNK/SCC/BV-17-C [Sync to PA, LC3 8_1_2]
     BAP/BSNK/SCC/BV-18-C [Sync to PA, LC3 8_2_2]
     BAP/BSNK/SCC/BV-19-C [Sync to PA, LC3 16_1_2]
     BAP/BSNK/SCC/BV-20-C [Sync to PA, LC3 16_2_2]
     BAP/BSNK/SCC/BV-21-C [Sync to PA, LC3 24_1_2]
     BAP/BSNK/SCC/BV-22-C [Sync to PA, LC3 24_2_2]
     BAP/BSNK/SCC/BV-23-C [Sync to PA, LC3 32_1_2]
     BAP/BSNK/SCC/BV-24-C [Sync to PA, LC3 32_2_2]
     BAP/BSNK/SCC/BV-25-C [Sync to PA, LC3 44.1_1_2]
     BAP/BSNK/SCC/BV-26-C [Sync to PA, LC3 44.1_2_2]
     BAP/BSNK/SCC/BV-27-C [Sync to PA, LC3 48_1_2]
     BAP/BSNK/SCC/BV-28-C [Sync to PA, LC3 48_2_2]
     BAP/BSNK/SCC/BV-29-C [Sync to PA, LC3 48_3_2]
     BAP/BSNK/SCC/BV-30-C [Sync to PA, LC3 48_4_2]
     BAP/BSNK/SCC/BV-31-C [Sync to PA, LC3 48_5_2]
     BAP/BSNK/SCC/BV-32-C [Sync to PA, LC3 48_6_2]
     BAP/BSNK/SCC/BV-33-C [Sync to PA, VS]

     Pass verdict:
     The received AdvData field of AUX_SYNC_IND and optionally
     AUX_CHAIN_IND PDUs contains the configured BASE information.

Test Summary
------------
BAP/BSNK/SCC/BV-01-C [Sync to PA, LC3 8_1_1]         Passed
BAP/BSNK/SCC/BV-02-C [Sync to PA, LC3 8_2_1]         Passed
BAP/BSNK/SCC/BV-03-C [Sync to PA, LC3 16_1_1]        Passed
BAP/BSNK/SCC/BV-04-C [Sync to PA, LC3 16_2_1]        Passed
BAP/BSNK/SCC/BV-05-C [Sync to PA, LC3 24_1_1]        Passed
BAP/BSNK/SCC/BV-06-C [Sync to PA, LC3 24_2_1]        Passed
BAP/BSNK/SCC/BV-07-C [Sync to PA, LC3 32_1_1]        Passed
BAP/BSNK/SCC/BV-08-C [Sync to PA, LC3 32_2_1]        Passed
BAP/BSNK/SCC/BV-09-C [Sync to PA, LC3 44.1_1_1]      Passed
BAP/BSNK/SCC/BV-10-C [Sync to PA, LC3 44.1_2_1]      Passed
BAP/BSNK/SCC/BV-11-C [Sync to PA, LC3 48_1_1]        Passed
BAP/BSNK/SCC/BV-12-C [Sync to PA, LC3 48_2_1]        Passed
BAP/BSNK/SCC/BV-13-C [Sync to PA, LC3 48_3_1]        Passed
BAP/BSNK/SCC/BV-14-C [Sync to PA, LC3 48_4_1]        Passed
BAP/BSNK/SCC/BV-15-C [Sync to PA, LC3 48_5_1]        Passed
BAP/BSNK/SCC/BV-16-C [Sync to PA, LC3 48_6_1]        Passed
BAP/BSNK/SCC/BV-17-C [Sync to PA, LC3 8_1_2]         Passed
BAP/BSNK/SCC/BV-18-C [Sync to PA, LC3 8_2_2]         Passed
BAP/BSNK/SCC/BV-19-C [Sync to PA, LC3 16_1_2]        Passed
BAP/BSNK/SCC/BV-20-C [Sync to PA, LC3 16_2_2]        Passed
BAP/BSNK/SCC/BV-21-C [Sync to PA, LC3 24_1_2]        Passed
BAP/BSNK/SCC/BV-22-C [Sync to PA, LC3 24_2_2]        Passed
BAP/BSNK/SCC/BV-23-C [Sync to PA, LC3 32_1_2]        Passed
BAP/BSNK/SCC/BV-24-C [Sync to PA, LC3 32_2_2]        Passed
BAP/BSNK/SCC/BV-25-C [Sync to PA, LC3 44.1_1_2]      Passed
BAP/BSNK/SCC/BV-26-C [Sync to PA, LC3 44.1_2_2]      Passed
BAP/BSNK/SCC/BV-27-C [Sync to PA, LC3 48_1_2]        Passed
BAP/BSNK/SCC/BV-28-C [Sync to PA, LC3 48_2_2]        Passed
BAP/BSNK/SCC/BV-29-C [Sync to PA, LC3 48_3_2]        Passed
BAP/BSNK/SCC/BV-30-C [Sync to PA, LC3 48_4_2]        Passed
BAP/BSNK/SCC/BV-31-C [Sync to PA, LC3 48_5_2]        Passed
BAP/BSNK/SCC/BV-32-C [Sync to PA, LC3 48_6_2]        Passed
BAP/BSNK/SCC/BV-33-C [Sync to PA, VS]                Passed
2024-05-17 11:26:36 -04:00
Iulia Tanasescu
94c1c776ca test-bap: Make test_bsrc generic
This makes test_bsrc more generic, to accommodate Broadcast Sink tests
as well, following the unicast design for handling source/sink
configurations.
2024-05-17 11:26:34 -04:00
Iulia Tanasescu
61ed4b4b60 test-bap: Update caps to accommodate 8_1 config
This adjusts the min SDU size in lc3_caps, to accommodate the 8_1 config.
2024-05-17 11:26:33 -04:00
Iulia Tanasescu
ffd538cf77 test-bap: Add Broadcast Source SCC tests
4.13.1 Broadcast Source Configures Broadcast Audio Stream (page 172):

    Test Purpose:
    Verify that a Broadcast Source IUT can configure a broadcast Audio
    Stream with information defined by the values in its BASE structure.

    Test Case Configuration:
    BAP/BSRC/SCC/BV-01-C [Config Broadcast, LC3 8_1_1]
    BAP/BSRC/SCC/BV-02-C [Config Broadcast, LC3 8_2_1]
    BAP/BSRC/SCC/BV-03-C [Config Broadcast, LC3 16_1_1]
    BAP/BSRC/SCC/BV-04-C [Config Broadcast, LC3 16_2_1]
    BAP/BSRC/SCC/BV-05-C [Config Broadcast, LC3 24_1_1]
    BAP/BSRC/SCC/BV-06-C [Config Broadcast, LC3 24_2_1]
    BAP/BSRC/SCC/BV-07-C [Config Broadcast, LC3 32_1_1]
    BAP/BSRC/SCC/BV-08-C [Config Broadcast, LC3 32_2_1]
    BAP/BSRC/SCC/BV-09-C [Config Broadcast, LC3 44.1_1_1]
    BAP/BSRC/SCC/BV-10-C [Config Broadcast, LC3 44.1_2_1]
    BAP/BSRC/SCC/BV-11-C [Config Broadcast, LC3 48_1_1]
    BAP/BSRC/SCC/BV-12-C [Config Broadcast, LC3 48_2_1]
    BAP/BSRC/SCC/BV-13-C [Config Broadcast, LC3 48_3_1]
    BAP/BSRC/SCC/BV-14-C [Config Broadcast, LC3 48_4_1]
    BAP/BSRC/SCC/BV-15-C [Config Broadcast, LC3 48_5_1]
    BAP/BSRC/SCC/BV-16-C [Config Broadcast, LC3 48_6_1]
    BAP/BSRC/SCC/BV-17-C [Config Broadcast, LC3 8_1_2]
    BAP/BSRC/SCC/BV-18-C [Config Broadcast, LC3 8_2_2]
    BAP/BSRC/SCC/BV-19-C [Config Broadcast, LC3 16_1_2]
    BAP/BSRC/SCC/BV-20-C [Config Broadcast, LC3 16_2_2]
    BAP/BSRC/SCC/BV-21-C [Config Broadcast, LC3 24_1_2]
    BAP/BSRC/SCC/BV-22-C [Config Broadcast, LC3 24_2_2]
    BAP/BSRC/SCC/BV-23-C [Config Broadcast, LC3 32_1_2]
    BAP/BSRC/SCC/BV-24-C [Config Broadcast, LC3 32_2_2]
    BAP/BSRC/SCC/BV-25-C [Config Broadcast, LC3 44.1_1_2]
    BAP/BSRC/SCC/BV-26-C [Config Broadcast, LC3 44.1_2_2]
    BAP/BSRC/SCC/BV-27-C [Config Broadcast, LC3 48_1_2]
    BAP/BSRC/SCC/BV-28-C [Config Broadcast, LC3 48_2_2]
    BAP/BSRC/SCC/BV-29-C [Config Broadcast, LC3 48_3_2]
    BAP/BSRC/SCC/BV-30-C [Config Broadcast, LC3 48_4_2]
    BAP/BSRC/SCC/BV-31-C [Config Broadcast, LC3 48_5_2]
    BAP/BSRC/SCC/BV-32-C [Config Broadcast, LC3 48_6_2]
    BAP/BSRC/SCC/BV-33-C [Config Broadcast, VS]

    Pass verdict:
    The AdvData field of AUX_SYNC_IND and optionally
    AUX_CHAIN_IND PDUs contains the configured BASE information.

Test Summary
------------
BAP/BSRC/SCC/BV-01-C [Config Broadcast, LC3 8_1_1]   Passed
BAP/BSRC/SCC/BV-02-C [Config Broadcast, LC3 8_2_1]   Passed
BAP/BSRC/SCC/BV-03-C [Config Broadcast, LC3 16_1_1]  Passed
BAP/BSRC/SCC/BV-04-C [Config Broadcast, LC3 16_2_1]  Passed
BAP/BSRC/SCC/BV-05-C [Config Broadcast, LC3 24_1_1]  Passed
BAP/BSRC/SCC/BV-06-C [Config Broadcast, LC3 24_2_1]  Passed
BAP/BSRC/SCC/BV-07-C [Config Broadcast, LC3 32_1_1]  Passed
BAP/BSRC/SCC/BV-08-C [Config Broadcast, LC3 32_2_1]  Passed
BAP/BSRC/SCC/BV-09-C [Config Broadcast, LC3 44.1_1_1] Passed
BAP/BSRC/SCC/BV-09-C [Config Broadcast, LC3 44.1_2_1] Passed
BAP/BSRC/SCC/BV-11-C [Config Broadcast, LC3 48_1_1]  Passed
BAP/BSRC/SCC/BV-12-C [Config Broadcast, LC3 48_2_1]  Passed
BAP/BSRC/SCC/BV-13-C [Config Broadcast, LC3 48_3_1]  Passed
BAP/BSRC/SCC/BV-14-C [Config Broadcast, LC3 48_4_1]  Passed
BAP/BSRC/SCC/BV-15-C [Config Broadcast, LC3 48_5_1]  Passed
BAP/BSRC/SCC/BV-16-C [Config Broadcast, LC3 48_6_1]  Passed
BAP/BSRC/SCC/BV-17-C [Config Broadcast, LC3 8_1_2]   Passed
BAP/BSRC/SCC/BV-18-C [Config Broadcast, LC3 8_2_2]   Passed
BAP/BSRC/SCC/BV-19-C [Config Broadcast, LC3 16_1_2]  Passed
BAP/BSRC/SCC/BV-20-C [Config Broadcast, LC3 16_2_2]  Passed
BAP/BSRC/SCC/BV-21-C [Config Broadcast, LC3 24_1_2]  Passed
BAP/BSRC/SCC/BV-22-C [Config Broadcast, LC3 24_2_2]  Passed
BAP/BSRC/SCC/BV-23-C [Config Broadcast, LC3 32_1_2]  Passed
BAP/BSRC/SCC/BV-24-C [Config Broadcast, LC3 32_2_2]  Passed
BAP/BSRC/SCC/BV-25-C [Config Broadcast, LC3 44.1_1_2] Passed
BAP/BSRC/SCC/BV-26-C [Config Broadcast, LC3 44.1_2_2] Passed
BAP/BSRC/SCC/BV-27-C [Config Broadcast, LC3 48_1_2]  Passed
BAP/BSRC/SCC/BV-28-C [Config Broadcast, LC3 48_2_2]  Passed
BAP/BSRC/SCC/BV-29-C [Config Broadcast, LC3 48_3_2]  Passed
BAP/BSRC/SCC/BV-30-C [Config Broadcast, LC3 48_4_2]  Passed
BAP/BSRC/SCC/BV-31-C [Config Broadcast, LC3 48_5_2]  Passed
BAP/BSRC/SCC/BV-32-C [Config Broadcast, LC3 48_6_2]  Passed
BAP/BSRC/SCC/BV-33-C [Config Broadcast, VS]          Passed
2024-05-13 09:56:37 -04:00
Iulia Tanasescu
78bf2ab7bd test-bap: Pass test_setup as test define argument
The current test_setup function is only targeted for client test cases
that require service discovery. This commit makes the test define more
generic, by adding the test_setup to the list of parameters, so that
custom setup functions can be provided depending on the test case.
2024-05-13 09:56:37 -04:00
Luiz Augusto von Dentz
7604a577c9 shared/gatt-db: Fix gatt_db_service_insert_characteristic
gatt_db_service_insert_characteristic shall not attempt to insert the
characteristic attribute handle on the next available index as there
could be descriptors in between so this changes the way
get_attribute_index calculates the index based on the given handle to
properly skip indexes used by descriptors.
2024-04-08 11:54:56 -04:00
Luiz Augusto von Dentz
0959cb8f5f test-bap: Fix 44.1 KHz tests
44.1 Khz where broken due to change to LC3_QOS_UCAST which now properly
sets the framing, so this changes the test vectors of 44.1 Khz test to
properly set it since those required framing.
2024-03-14 09:45:07 -04:00
Luiz Augusto von Dentz
f5fecf037b test-uhid: Test bt_uhid functions
This tests bt_uhid_create, bt_uhid_input and bt_uhid_destroy instead of
directly submitting UHID_CREATE, UHID_INPUT and UHID_DESTROY.
2024-03-11 18:42:44 -04:00
Luiz Augusto von Dentz
2da45fc7e2 test-bap: Add STR sink tests
4.10.1 Unicast Client Streaming – 1 Unicast Server, 1 Stream, 1 CIS –
LC3 (Page 80)

 Test Purpose:
 Verify that a Unicast Client IUT can stream audio data over one unicast
 Audio Stream to or from a Unicast Server.

 Pass verdict:
 If the IUT is in the Audio Sink role, the IUT receives SDUs with a zero or
 more length that contains LC3-encoded data formatted using the LC3 Media
 Packet format (defined in [3] Section 4.2).

Test Summary
------------
BAP/UCL/STR/BV-001-C [UCL, AC 2, LC3 8_1_1]          Passed
BAP/UCL/STR/BV-002-C [UCL, AC 10, LC3 8_1_1]         Passed
BAP/UCL/STR/BV-003-C [UCL, AC 2, LC3 8_2_1]          Passed
BAP/UCL/STR/BV-004-C [UCL, AC 10, LC3 8_2_1]         Passed
BAP/UCL/STR/BV-005-C [UCL, AC 2, LC3 16_1_1]         Passed
BAP/UCL/STR/BV-006-C [UCL, AC 10, LC3 16_1_1]        Passed
BAP/UCL/STR/BV-007-C [UCL, AC 2, LC3 16_2_1]         Passed
BAP/UCL/STR/BV-008-C [UCL, AC 10, LC3 16_2_1]        Passed
BAP/UCL/STR/BV-009-C [UCL, AC 2, LC3 24_1_1]         Passed
BAP/UCL/STR/BV-010-C [UCL, AC 10, LC3 24_1_1]        Passed
BAP/UCL/STR/BV-011-C [UCL, AC 2, LC3 24_2_1]         Passed
BAP/UCL/STR/BV-012-C [UCL, AC 10, LC3 24_2_1]        Passed
BAP/UCL/STR/BV-013-C [UCL, AC 2, LC3 32_1_1]         Passed
BAP/UCL/STR/BV-014-C [UCL, AC 10, LC3 32_1_1]        Passed
BAP/UCL/STR/BV-015-C [UCL, AC 2, LC3 32_2_1]         Passed
BAP/UCL/STR/BV-016-C [UCL, AC 10, LC3 32_2_1]        Passed
BAP/UCL/STR/BV-017-C [UCL, AC 2, LC3 441_1_1]        Passed
BAP/UCL/STR/BV-018-C [UCL, AC 10, LC3 441_1_1]       Passed
BAP/UCL/STR/BV-019-C [UCL, AC 2, LC3 44_2_1]         Passed
BAP/UCL/STR/BV-020-C [UCL, AC 10, LC3 44_2_1]        Passed
BAP/UCL/STR/BV-021-C [UCL, AC 2, LC3 48_1_1]         Passed
BAP/UCL/STR/BV-022-C [UCL, AC 10, LC3 48_1_1]        Passed
BAP/UCL/STR/BV-023-C [UCL, AC 2, LC3 48_2_1]         Passed
BAP/UCL/STR/BV-024-C [UCL, AC 10, LC3 48_2_1]        Passed
BAP/UCL/STR/BV-025-C [UCL, AC 2, LC3 48_3_1]         Passed
BAP/UCL/STR/BV-026-C [UCL, AC 10, LC3 48_3_1]        Passed
BAP/UCL/STR/BV-027-C [UCL, AC 2, LC3 48_4_1]         Passed
BAP/UCL/STR/BV-028-C [UCL, AC 10, LC3 48_4_1]        Passed
BAP/UCL/STR/BV-029-C [UCL, AC 2, LC3 48_5_1]         Passed
BAP/UCL/STR/BV-030-C [UCL, AC 10, LC3 48_5_1]        Passed
BAP/UCL/STR/BV-031-C [UCL, AC 2, LC3 48_6_1]         Passed
BAP/UCL/STR/BV-032-C [UCL, AC 10, LC3 48_6_1]        Passed
BAP/UCL/STR/BV-033-C [UCL, SRC, AC 1, LC3 8_1_1]     Passed
BAP/UCL/STR/BV-034-C [UCL, SRC, AC 4, LC3 8_1_1]     Passed
BAP/UCL/STR/BV-035-C [UCL, SRC, AC 1, LC3 8_2_1]     Passed
BAP/UCL/STR/BV-036-C [UCL, SRC, AC 4, LC3 8_2_1]     Passed
BAP/UCL/STR/BV-037-C [UCL, SRC, AC 1, LC3 16_1_1]    Passed
BAP/UCL/STR/BV-038-C [UCL, SRC, AC 4, LC3 16_1_1]    Passed
BAP/UCL/STR/BV-039-C [UCL, SRC, AC 1, LC3 16_2_1]    Passed
BAP/UCL/STR/BV-040-C [UCL, SRC, AC 4, LC3 16_2_1]    Passed
BAP/UCL/STR/BV-041-C [UCL, SRC, AC 1, LC3 24_1_1]    Passed
BAP/UCL/STR/BV-042-C [UCL, SRC, AC 4, LC3 24_1_1]    Passed
BAP/UCL/STR/BV-043-C [UCL, SRC, AC 1, LC3 24_2_1]    Passed
BAP/UCL/STR/BV-044-C [UCL, SRC, AC 4, LC3 24_2_1]    Passed
BAP/UCL/STR/BV-045-C [UCL, SRC, AC 1, LC3 32_1_1]    Passed
BAP/UCL/STR/BV-046-C [UCL, SRC, AC 4, LC3 32_1_1]    Passed
BAP/UCL/STR/BV-047-C [UCL, SRC, AC 1, LC3 32_2_1]    Passed
BAP/UCL/STR/BV-048-C [UCL, SRC, AC 4, LC3 32_2_1]    Passed
BAP/UCL/STR/BV-049-C [UCL, SRC, AC 1, LC3 44_1_1]    Passed
BAP/UCL/STR/BV-050-C [UCL, SRC, AC 4, LC3 44_1_1]    Passed
BAP/UCL/STR/BV-051-C [UCL, SRC, AC 1, LC3 44_2_1]    Passed
BAP/UCL/STR/BV-052-C [UCL, SRC, AC 4, LC3 44_2_1]    Passed
BAP/UCL/STR/BV-053-C [UCL, SRC, AC 1, LC3 48_1_1]    Passed
BAP/UCL/STR/BV-054-C [UCL, SRC, AC 4, LC3 48_1_1]    Passed
BAP/UCL/STR/BV-055-C [UCL, SRC, AC 1, LC3 48_2_1]    Passed
BAP/UCL/STR/BV-056-C [UCL, SRC, AC 4, LC3 48_2_1]    Passed
BAP/UCL/STR/BV-057-C [UCL, SRC, AC 1, LC3 48_3_1]    Passed
BAP/UCL/STR/BV-058-C [UCL, SRC, AC 4, LC3 48_3_1]    Passed
BAP/UCL/STR/BV-059-C [UCL, SRC, AC 1, LC3 48_4_1]    Passed
BAP/UCL/STR/BV-060-C [UCL, SRC, AC 4, LC3 48_4_1]    Passed
BAP/UCL/STR/BV-061-C [UCL, SRC, AC 1, LC3 48_5_1]    Passed
BAP/UCL/STR/BV-062-C [UCL, SRC, AC 4, LC3 48_5_1]    Passed
BAP/UCL/STR/BV-063-C [UCL, SRC, AC 1, LC3 48_6_1]    Passed
BAP/UCL/STR/BV-064-C [UCL, SRC, AC 4, LC3 48_6_1]    Passed
BAP/UCL/STR/BV-065-C [UCL, AC 2, LC3 8_1_2]          Passed
BAP/UCL/STR/BV-066-C [UCL, AC 10, LC3 8_1_2]         Passed
BAP/UCL/STR/BV-067-C [UCL, AC 2, LC3 8_2_2]          Passed
BAP/UCL/STR/BV-068-C [UCL, AC 10, LC3 8_2_2]         Passed
BAP/UCL/STR/BV-069-C [UCL, AC 2, LC3 16_1_2]         Passed
BAP/UCL/STR/BV-070-C [UCL, AC 10, LC3 16_1_2]        Passed
BAP/UCL/STR/BV-071-C [UCL, AC 2, LC3 16_2_2]         Passed
BAP/UCL/STR/BV-072-C [UCL, AC 10, LC3 16_2_2]        Passed
BAP/UCL/STR/BV-073-C [UCL, AC 2, LC3 24_1_2]         Passed
BAP/UCL/STR/BV-074-C [UCL, AC 10, LC3 24_1_2]        Passed
BAP/UCL/STR/BV-075-C [UCL, AC 2, LC3 24_2_2]         Passed
BAP/UCL/STR/BV-076-C [UCL, AC 10, LC3 24_2_2]        Passed
BAP/UCL/STR/BV-077-C [UCL, AC 2, LC3 32_1_2]         Passed
BAP/UCL/STR/BV-078-C [UCL, AC 10, LC3 32_1_2]        Passed
BAP/UCL/STR/BV-079-C [UCL, AC 2, LC3 32_2_2]         Passed
BAP/UCL/STR/BV-080-C [UCL, AC 10, LC3 32_2_2]        Passed
BAP/UCL/STR/BV-081-C [UCL, AC 2, LC3 44_1_2]         Passed
BAP/UCL/STR/BV-082-C [UCL, AC 10, LC3 44_1_2]        Passed
BAP/UCL/STR/BV-083-C [UCL, AC 2, LC3 44_2_2]         Passed
BAP/UCL/STR/BV-084-C [UCL, AC 10, LC3 44_2_2]        Passed
BAP/UCL/STR/BV-085-C [UCL, AC 2, LC3 48_1_2]         Passed
BAP/UCL/STR/BV-086-C [UCL, AC 10, LC3 48_1_2]        Passed
BAP/UCL/STR/BV-087-C [UCL, AC 2, LC3 48_2_2]         Passed
BAP/UCL/STR/BV-088-C [UCL, AC 10, LC3 48_2_2]        Passed
BAP/UCL/STR/BV-089-C [UCL, AC 2, LC3 48_3_2]         Passed
BAP/UCL/STR/BV-090-C [UCL, AC 10, LC3 48_3_2]        Passed
BAP/UCL/STR/BV-091-C [UCL, AC 2, LC3 48_4_2]         Passed
BAP/UCL/STR/BV-092-C [UCL, AC 10, LC3 48_4_2]        Passed
BAP/UCL/STR/BV-093-C [UCL, AC 2, LC3 48_5_2]         Passed
BAP/UCL/STR/BV-094-C [UCL, AC 10, LC3 48_5_2]        Passed
BAP/UCL/STR/BV-095-C [UCL, AC 2, LC3 48_6_2]         Passed
BAP/UCL/STR/BV-096-C [UCL, AC 10, LC3 48_6_2]        Passed
BAP/UCL/STR/BV-097-C [UCL, SRC, AC 1, LC3 8_1_2]     Passed
BAP/UCL/STR/BV-098-C [UCL, SRC, AC 4, LC3 8_1_2]     Passed
BAP/UCL/STR/BV-099-C [UCL, SRC, AC 1, LC3 8_2_2]     Passed
BAP/UCL/STR/BV-100-C [UCL, SRC, AC 4, LC3 8_2_2]     Passed
BAP/UCL/STR/BV-101-C [UCL, SRC, AC 1, LC3 16_1_2]    Passed
BAP/UCL/STR/BV-102-C [UCL, SRC, AC 4, LC3 16_1_2]    Passed
BAP/UCL/STR/BV-103-C [UCL, SRC, AC 1, LC3 16_2_2]    Passed
BAP/UCL/STR/BV-104-C [UCL, SRC, AC 4, LC3 16_2_2]    Passed
BAP/UCL/STR/BV-105-C [UCL, SRC, AC 1, LC3 24_1_2]    Passed
BAP/UCL/STR/BV-106-C [UCL, SRC, AC 4, LC3 24_1_2]    Passed
BAP/UCL/STR/BV-107-C [UCL, SRC, AC 1, LC3 24_2_2]    Passed
BAP/UCL/STR/BV-108-C [UCL, SRC, AC 4, LC3 24_2_2]    Passed
BAP/UCL/STR/BV-109-C [UCL, SRC, AC 1, LC3 32_1_2]    Passed
BAP/UCL/STR/BV-110-C [UCL, SRC, AC 4, LC3 32_1_2]    Passed
BAP/UCL/STR/BV-111-C [UCL, SRC, AC 1, LC3 32_2_2]    Passed
BAP/UCL/STR/BV-112-C [UCL, SRC, AC 4, LC3 32_2_2]    Passed
BAP/UCL/STR/BV-113-C [UCL, SRC, AC 1, LC3 44_1_2]    Passed
BAP/UCL/STR/BV-114-C [UCL, SRC, AC 4, LC3 44_1_2]    Passed
BAP/UCL/STR/BV-115-C [UCL, SRC, AC 1, LC3 44_2_2]    Passed
BAP/UCL/STR/BV-116-C [UCL, SRC, AC 4, LC3 44_2_2]    Passed
BAP/UCL/STR/BV-117-C [UCL, SRC, AC 1, LC3 48_1_2]    Passed
BAP/UCL/STR/BV-118-C [UCL, SRC, AC 4, LC3 48_1_2]    Passed
BAP/UCL/STR/BV-119-C [UCL, SRC, AC 1, LC3 48_2_2]    Passed
BAP/UCL/STR/BV-120-C [UCL, SRC, AC 4, LC3 48_2_2]    Passed
BAP/UCL/STR/BV-121-C [UCL, SRC, AC 1, LC3 48_3_2]    Passed
BAP/UCL/STR/BV-122-C [UCL, SRC, AC 4, LC3 48_3_2]    Passed
BAP/UCL/STR/BV-123-C [UCL, SRC, AC 1, LC3 48_4_2]    Passed
BAP/UCL/STR/BV-124-C [UCL, SRC, AC 4, LC3 48_4_2]    Passed
BAP/UCL/STR/BV-121-C [UCL, SRC, AC 1, LC3 48_5_2]    Passed
BAP/UCL/STR/BV-122-C [UCL, SRC, AC 4, LC3 48_5_2]    Passed
BAP/UCL/STR/BV-123-C [UCL, SRC, AC 1, LC3 48_6_2]    Passed
BAP/UCL/STR/BV-124-C [UCL, SRC, AC 4, LC3 48_6_2]    Passed
Total: 128, Passed: 128 (100.0%), Failed: 0, Not Run: 0
2024-03-06 18:05:01 -05:00
Frédéric Danis
ba5a1de8f8 unit/test-gatt: Add tail setup db test
Verify that gatt_db_get_hash() does not crash when services are added
to the tail end of the db.
2024-01-12 10:30:35 -05:00
Mahesh Talewad
eb07ec1f6f unit/test-vcp.c: Add AICS unit tests
This implements the following test:

Test Summary
------------
AICS/SR/SGGIT/CHA/BV-01-C                            Passed
AICS/SR/SGGIT/CHA/BV-02-C                            Passed
AICS/SR/SGGIT/CHA/BV-03-C                            Passed
AICS/SR/SGGIT/CHA/BV-04-C                            Passed
AICS/SR/SGGIT/CHA/BV-05-C                            Passed
AICS/SR/SGGIT/CHA/BV-06-C                            Passed
AICS/SR/SGGIT/CP/BI-01-C                             Passed
AICS/SR/SGGIT/CP/BI-02-C                             Passed
AICS/SR/CP/BV-01-C                                   Passed
AICS/SR/SPE/BI-01-C                                  Passed
Total: 10, Passed: 10 (100.0%), Failed: 0, Not Run: 0
2023-12-18 15:46:14 -05:00
Luiz Augusto von Dentz
71188eb0e7 test-vcp: Fix CCC value endianness
CCC value is 2 octects long so it needs to be converted using
cpu_to_le16 in order to not fail in Big Endian architectures.
2023-12-06 14:24:29 -05:00
Luiz Augusto von Dentz
9b322d3a52 test-bap: Add SCC Update Metadata tests
4.8.8 Unicast Client Initiates Update Metadata Operation (Page 53):

  Test Purpose:
  Verify that a Unicast Client IUT can update the Metadata of an ASE by
  initiating an Update Metadata operation.

  Pass verdict:
  The IUT successfully writes to the ASE Control Point characteristic with the
  opcode set to 0x07 (Update Metadata) and the specified parameters.

Test Summary
------------
BAP/UCL/SCC/BV-115-C [UCL SNK Update Metadata in Enabling State] Passed
BAP/UCL/SCC/BV-116-C [UCL SRC Update Metadata in Enabling or Streaming state]
Passed
BAP/UCL/SCC/BV-117-C [UCL SNK Update Metadata in Streaming State] Passed
Total: 3, Passed: 3 (100.0%), Failed: 0, Not Run: 0
2023-12-04 22:23:41 -05:00
Luiz Augusto von Dentz
5d22770712 test-bap: Add SCC Release tests
4.8.7 Unicast Client Initiates Release Operation (Page 51):

  Test Purpose:
  Verify that a Unicast Client IUT can release an ASE by initiating a Release
  operation.

  Pass verdict:
  The IUT successfully writes to the ASE Control Point characteristic with the
  opcode set to 0x08 (Release) and the specified parameters.

Test Summary
------------
BAP/UCL/SCC/BV-106-C [UCL SNK Release in Codec Configured state] Passed
BAP/UCL/SCC/BV-107-C [UCL SRC Release in Codec Configured state] Passed
BAP/UCL/SCC/BV-108-C [UCL SNK Release in QoS Configured state] Passed
BAP/UCL/SCC/BV-109-C [UCL SRC Release in QoS Configured state] Passed
BAP/UCL/SCC/BV-110-C [UCL SNK Release in Enabling state] Passed
BAP/UCL/SCC/BV-111-C [UCL SRC Release in Enabling or Streaming state] Passed
BAP/UCL/SCC/BV-112-C [UCL SNK Release in Streaming state] Passed
BAP/UCL/SCC/BV-113-C [UCL SNK Release in Disabling state] Passed
Total: 8, Passed: 8 (100.0%), Failed: 0, Not Run: 0
2023-12-04 22:23:39 -05:00
Luiz Augusto von Dentz
58805e4f28 test-bap: Add SCC Disable tests
4.8.6 Unicast Client Initiates Disable Operation (Page 50):

  Test Purpose:
  Verify that a Unicast Client IUT can initiate a Disable operation for an ASE
  in the Enabling or Streaming state.

  Pass verdict:
  The IUT successfully writes to the ASE Control Point characteristic with the
  opcode set to 0x05 (Disable) and the specified parameters.

Test Summary
------------
BAP/UCL/SCC/BV-103-C [UCL SNK Disable in Enabling State] Passed
BAP/UCL/SCC/BV-104-C [UCL SRC Disable in Enabling or Streaming state] Passed
BAP/UCL/SCC/BV-105-C [UCL SNK Disable in Streaming State] Passed
Total: 3, Passed: 3 (100.0%), Failed: 0, Not Run: 0
2023-12-04 22:23:25 -05:00
Luiz Augusto von Dentz
6f957d3b6c test-bap: Add SCC Enable tests
4.8.5 Unicast Client Initiates Enable Operation (Page 48)

  Test Purpose:
  Verify that a Unicast Client IUT can initiate an Enable operation for an ASE
  with a Unicast Server that is either in the Audio Sink role or the Audio
  Source role.

  Pass verdict:
  The IUT successfully writes to the ASE Control Point characteristic with the
  opcode set to 0x03 (Enable) and the specified parameters.

Test Summary
------------
BAP/UCL/SCC/BV-101-C [UCL SRC Enable]                Passed
BAP/UCL/SCC/BV-102-C [UCL SNK Enable]                Passed
Total: 2, Passed: 2 (100.0%), Failed: 0, Not Run: 0
2023-12-04 22:23:23 -05:00
Luiz Augusto von Dentz
f93fec8904 test-bap: Add SCC Config QoS, VS tests
4.8.4 Unicast Client Initiates Config QoS – Vendor-Specific (Page 46)

  Test Purpose:
  Verify that a Unicast Client IUT can initiate a Config QoS operation for a
  vendor-specific codec.

  Pass verdict:
  The IUT successfully writes to the ASE Control Point characteristic with the
  opcode set to 0x02 (Config QoS) and the specified parameters.

Test Summary
------------
BAP/UCL/SCC/BV-099-C [UCL SNK Config QoS, VS]        Passed
BAP/UCL/SCC/BV-100-C [UCL SRC Config QoS, VS]        Passed
Total: 2, Passed: 2 (100.0%), Failed: 0, Not Run: 0
2023-12-04 22:23:21 -05:00
Luiz Augusto von Dentz
9c3824db2a test-bap: Introduce QoS tests for LC3
4.8.3 Unicast Client Initiates Config QoS – LC3
(Page 43)

  Test Purpose:
  Verify that a Unicast Client IUT can initiate a Config QoS operation for the
  LC3 codec.

  Pass verdict:
  The IUT successfully writes to the ASE Control Point characteristic with the
  opcode set to 0x02 (Config QoS) and the specified parameters.

Test Summary
------------
BAP/UCL/SCC/BV-035-C [UCL SRC Config QoS, LC3 8_1_1] Passed
BAP/UCL/SCC/BV-036-C [UCL SRC Config QoS, LC3 8_2_1] Passed
BAP/UCL/SCC/BV-037-C [UCL SRC Config QoS, LC3 16_1_1] Passed
BAP/UCL/SCC/BV-038-C [UCL SRC Config QoS, LC3 16_2_1] Passed
BAP/UCL/SCC/BV-039-C [UCL SRC Config QoS, LC3 24_1_1] Passed
BAP/UCL/SCC/BV-040-C [UCL SRC Config QoS, LC3 24_2_1] Passed
BAP/UCL/SCC/BV-041-C [UCL SRC Config QoS, LC3 32_1_1] Passed
BAP/UCL/SCC/BV-042-C [UCL SRC Config QoS, LC3 32_2_1] Passed
BAP/UCL/SCC/BV-043-C [UCL SRC Config QoS, LC3 44.1_1_1] Passed
BAP/UCL/SCC/BV-044-C [UCL SRC Config QoS, LC3 44.1_2_1] Passed
BAP/UCL/SCC/BV-045-C [UCL SRC Config QoS, LC3 48_1_1] Passed
BAP/UCL/SCC/BV-046-C [UCL SRC Config QoS, LC3 48_2_1] Passed
BAP/UCL/SCC/BV-047-C [UCL SRC Config QoS, LC3 48_3_1] Passed
BAP/UCL/SCC/BV-048-C [UCL SRC Config QoS, LC3 48_4_1] Passed
BAP/UCL/SCC/BV-049-C [UCL SRC Config QoS, LC3 48_5_1] Passed
BAP/UCL/SCC/BV-050-C [UCL SRC Config QoS, LC3 48_6_1] Passed
BAP/UCL/SCC/BV-051-C [UCL SNK Config QoS, LC3 8_1_1] Passed
BAP/UCL/SCC/BV-052-C [UCL SNK Config QoS, LC3 8_2_1] Passed
BAP/UCL/SCC/BV-053-C [UCL SNK Config QoS, LC3 16_1_1] Passed
BAP/UCL/SCC/BV-054-C [UCL SNK Config QoS, LC3 16_2_1] Passed
BAP/UCL/SCC/BV-055-C [UCL SNK Config QoS, LC3 24_1_1] Passed
BAP/UCL/SCC/BV-056-C [UCL SNK Config QoS, LC3 24_2_1] Passed
BAP/UCL/SCC/BV-057-C [UCL SNK Config QoS, LC3 32_1_1] Passed
BAP/UCL/SCC/BV-058-C [UCL SNK Config QoS, LC3 32_2_1] Passed
BAP/UCL/SCC/BV-059-C [UCL SNK Config QoS, LC3 44.1_1_1] Passed
BAP/UCL/SCC/BV-060-C [UCL SNK Config QoS, LC3 44.1_2_1] Passed
BAP/UCL/SCC/BV-061-C [UCL SNK Config QoS, LC3 48_1_1] Passed
BAP/UCL/SCC/BV-062-C [UCL SNK Config QoS, LC3 48_2_1] Passed
BAP/UCL/SCC/BV-063-C [UCL SNK Config QoS, LC3 48_3_1] Passed
BAP/UCL/SCC/BV-064-C [UCL SNK Config QoS, LC3 48_4_1] Passed
BAP/UCL/SCC/BV-065-C [UCL SNK Config QoS, LC3 48_5_1] Passed
BAP/UCL/SCC/BV-066-C [UCL SNK Config QoS, LC3 48_6_1] Passed
BAP/UCL/SCC/BV-067-C [UCL SRC Config QoS, LC3 8_1_2] Passed
BAP/UCL/SCC/BV-068-C [UCL SRC Config QoS, LC3 8_2_2] Passed
BAP/UCL/SCC/BV-069-C [UCL SRC Config QoS, LC3 16_1_2] Passed
BAP/UCL/SCC/BV-070-C [UCL SRC Config QoS, LC3 16_2_2] Passed
BAP/UCL/SCC/BV-071-C [UCL SRC Config QoS, LC3 24_1_2] Passed
BAP/UCL/SCC/BV-072-C [UCL SRC Config QoS, LC3 24_2_2] Passed
BAP/UCL/SCC/BV-073-C [UCL SRC Config QoS, LC3 32_1_2] Passed
BAP/UCL/SCC/BV-074-C [UCL SRC Config QoS, LC3 32_2_2] Passed
BAP/UCL/SCC/BV-075-C [UCL SRC Config QoS, LC3 44.1_1_2] Passed
BAP/UCL/SCC/BV-076-C [UCL SRC Config QoS, LC3 44.1_2_2] Passed
BAP/UCL/SCC/BV-077-C [UCL SRC Config QoS, LC3 48_1_2] Passed
BAP/UCL/SCC/BV-078-C [UCL SRC Config QoS, LC3 48_2_2] Passed
BAP/UCL/SCC/BV-079-C [UCL SRC Config QoS, LC3 48_3_2] Passed
BAP/UCL/SCC/BV-080-C [UCL SRC Config QoS, LC3 48_4_2] Passed
BAP/UCL/SCC/BV-081-C [UCL SRC Config QoS, LC3 48_5_2] Passed
BAP/UCL/SCC/BV-082-C [UCL SRC Config QoS, LC3 48_6_2] Passed
BAP/UCL/SCC/BV-083-C [UCL SNK Config QoS, LC3 8_1_2] Passed
BAP/UCL/SCC/BV-084-C [UCL SNK Config QoS, LC3 8_2_2] Passed
BAP/UCL/SCC/BV-085-C [UCL SNK Config QoS, LC3 16_1_2] Passed
BAP/UCL/SCC/BV-086-C [UCL SNK Config QoS, LC3 16_2_2] Passed
BAP/UCL/SCC/BV-087-C [UCL SNK Config QoS, LC3 24_1_2] Passed
BAP/UCL/SCC/BV-088-C [UCL SNK Config QoS, LC3 24_2_2] Passed
BAP/UCL/SCC/BV-089-C [UCL SNK Config QoS, LC3 32_1_2] Passed
BAP/UCL/SCC/BV-090-C [UCL SNK Config QoS, LC3 32_2_2] Passed
BAP/UCL/SCC/BV-091-C [UCL SNK Config QoS, LC3 44.1_1_2] Passed
BAP/UCL/SCC/BV-092-C [UCL SNK Config QoS, LC3 44.1_2_2] Passed
BAP/UCL/SCC/BV-093-C [UCL SNK Config QoS, LC3 48_1_2] Passed
BAP/UCL/SCC/BV-094-C [UCL SNK Config QoS, LC3 48_2_2] Passed
BAP/UCL/SCC/BV-095-C [UCL SNK Config QoS, LC3 48_3_2] Passed
BAP/UCL/SCC/BV-096-C [UCL SNK Config QoS, LC3 48_4_2] Passed
BAP/UCL/SCC/BV-097-C [UCL SNK Config QoS, LC3 48_5_2] Passed
BAP/UCL/SCC/BV-098-C [UCL SNK Config QoS, LC3 48_6_2] Passed
Total: 64, Passed: 64 (100.0%), Failed: 0, Not Run: 0
2023-12-04 22:23:19 -05:00
Luiz Augusto von Dentz
3a2d3b31a3 test-micp: Fix endianness error
On big endian the followin error can be observed:

MICP/CL/CGGIT/SER/BV-01-C - init
MICP/CL/CGGIT/SER/BV-01-C - setup
MICP/CL/CGGIT/SER/BV-01-C - setup complete
MICP/CL/CGGIT/SER/BV-01-C - run
micp_write_value handle: 3
**
ERROR:src/shared/tester.c:954:test_io_recv: assertion failed:
(memcmp(buf, iov->iov_base, len) == 0)
Bail out! ERROR:src/shared/tester.c:954:test_io_recv: assertion failed:
(memcmp(buf, iov->iov_base, len) == 0)
Aborted
2023-11-29 17:30:13 -05:00
Mahesh Talewad
04f40b747f unit/test-vcp: VOCS unit test case implementation
This implements all(10) mandatory VOCS testcases as unit tests.
2023-10-10 16:18:52 -07:00
Iulia Tanasescu
4ea09cf6b9 test-bass: Add unit tests for the SPE suite
This adds BASS unit tests for the Service Procedures Error
Handling suite.
2023-10-10 16:15:21 -07:00
Luiz Augusto von Dentz
d4a0d223ea build: Fix missing file unit/test-micp.c
This fixes the following build error:

make[1]: *** No rule to make target 'unit/test-micp.c', needed
by 'unit/test-micp.o'.
2023-10-05 17:40:45 -07:00
Luiz Augusto von Dentz
b9e93e0116 midi: Fix build errors
This fixes the following build errors:

unit/test-midi.c:541:82: error: function definition is not allowed here
void compare_events_cb(const struct midi_write_parser *parser,
					void *user_data) {
							 ^
unit/test-midi.c:587:17: error: use of undeclared identifier
'compare_events_cb'; did you mean 'compare_events'?
                                     compare_events_cb, &midi_data);
                                     ^~~~~~~~~~~~~~~~~
                                     compare_events

profiles/midi/midi.c:61:75: error: function definition is not allowed
here
void foreach_cb(const struct midi_write_parser *parser, void *user_data) {
                                                                         ^
profiles/midi/midi.c:78:40: error: use of undeclared identifier 'foreach_cb'
                midi_read_ev(&midi->midi_out, event, foreach_cb, midi);
                                                     ^
2023-07-17 12:36:15 -07:00
Luiz Augusto von Dentz
b8f916b7ee test-eir: Run tests using bt_ad
This enables the same tests done with eir_data using bt_ad.
2023-07-12 12:36:37 -07:00
Iulia Tanasescu
8a8f8c143b shared/bass: Introduce Add Source opcode handler
This implements the Control Point handler for the Add Source operation.
2023-07-10 12:23:54 -07:00
Silviu Florian Barbulescu
eeb349bbab shared/bap: Split unicast and broadcast structures
This splits bt_bap_qos structure into unicast and broadcast structures.
2023-06-07 16:02:49 -07:00
Iulia Tanasescu
1248bdd432 unit: Introduce test-bass
This adds 3 unit tests for BASS server, to simulate the
Generic GATT Integrated Test suite for BASS.

Test Summary
------------
BASS/SR/SGGIT/SER/BV-01-C                            Passed
BASS/SR/SGGIT/CHA/BV-01-C                            Passed
BASS/SR/SGGIT/CHA/BV-02-C                            Passed
Total: 3, Passed: 3 (100.0%), Failed: 0, Not Run: 0
2023-05-30 11:43:46 -07:00
Luiz Augusto von Dentz
083e66d3ac test-bap: Add SCC tests for Vendor-Specific codec
4.8.2 Unicast Client Initiates a Config Codec Operation –
Vendor-Specific (page 42):

  Test Purpose:
  Verify that a Unicast Client IUT can initiate a Config Codec
  operation for a vendor-specific codec.

  Test Case Configuration:
  BAP/UCL/SCC/BV-033-C [UCL SRC Config Codec, VS]
  BAP/UCL/SCC/BV-034-C [UCL SNK Config Codec, VS]

  Pass verdict:
  The IUT successfully writes to the ASE Control Point characteristic
  with the opcode set to 0x01 (Config Codec) and the specified
  parameters. The Codec_ID parameter is formatted with octet 0 set to
  0xFF, octets 1–2 set to TSPX_VS_Company_ID, and octets 3–4 set to
  TSPX_VS_Codec_ID.

Test Summary
------------
BAP/UCL/SCC/BV-033-C [UCL SRC Config Codec, VS]      Passed
BAP/UCL/SCC/BV-034-C [UCL SNK Config Codec, VS]      Passed
Total: 2, Passed: 2 (100.0%), Failed: 0, Not Run: 0
2023-04-28 11:42:05 -07:00