zephyr/tests/subsys/modem
Bjarki Arge Andreasen 40b9f51ee5 modem: pipe: Reinvoke receive ready on attach
This PR makes the modem_pipe instances track if they have
data ready to receive, and invoke the RECEIVE_READY event
every time they are attached if the backend implementing
the pipe has notified that receive is ready.

This mechanism ensures that modules attaching to a pipe
get the async RECEIVE_READY event immediately after
attaching to a pipe if there is data ready, instead of
having to poll the pipe, or worse, wait until newer data
becomes available.

The addition revealed a timing issue in the cmux test
suite. Specifically the CMUX instance now immediately
receives the response to a command which the CMUX
instance has not sent yet, causing it to drop the
response.

The CMUX test suite now uses the transaction
mechanism of the mock_pipe to wait for the command
before sending the response.

Signed-off-by: Bjarki Arge Andreasen <bjarkix123@gmail.com>
2023-09-14 16:44:04 -05:00
..
backends/tty
mock
modem_chat modem: tests: Add test case for partial matches 2023-09-12 14:50:17 +02:00
modem_cmux modem: pipe: Reinvoke receive ready on attach 2023-09-14 16:44:04 -05:00
modem_ppp include: always use <> for Zephyr includes 2023-09-14 13:49:58 +02:00