|
22 | 22 |
|
23 | 23 | #define TEST_MODEM_BACKEND_TTY_PIPE_EVENT_OPENED_BIT (0) |
24 | 24 | #define TEST_MODEM_BACKEND_TTY_PIPE_EVENT_RRDY_BIT (1) |
25 | | -#define TEST_MODEM_BACKEND_TTY_PIPE_EVENT_CLOSED_BIT (2) |
| 25 | +#define TEST_MODEM_BACKEND_TTY_PIPE_EVENT_TIDLE_BIT (2) |
| 26 | +#define TEST_MODEM_BACKEND_TTY_PIPE_EVENT_CLOSED_BIT (3) |
26 | 27 |
|
27 | 28 | #define TEST_MODEM_BACKEND_TTY_OP_DELAY (K_MSEC(1000)) |
28 | 29 |
|
@@ -72,6 +73,10 @@ static void modem_pipe_callback_handler(struct modem_pipe *pipe, enum modem_pipe |
72 | 73 | atomic_set_bit(&tty_pipe_events, TEST_MODEM_BACKEND_TTY_PIPE_EVENT_RRDY_BIT); |
73 | 74 | break; |
74 | 75 |
|
| 76 | + case MODEM_PIPE_EVENT_TRANSMIT_IDLE: |
| 77 | + atomic_set_bit(&tty_pipe_events, TEST_MODEM_BACKEND_TTY_PIPE_EVENT_TIDLE_BIT); |
| 78 | + break; |
| 79 | + |
75 | 80 | case MODEM_PIPE_EVENT_CLOSED: |
76 | 81 | atomic_set_bit(&tty_pipe_events, TEST_MODEM_BACKEND_TTY_PIPE_EVENT_CLOSED_BIT); |
77 | 82 | break; |
@@ -122,9 +127,13 @@ static void test_modem_backend_tty_teardown(void *f) |
122 | 127 | /*************************************************************************************************/ |
123 | 128 | ZTEST(modem_backend_tty_suite, test_close_open) |
124 | 129 | { |
| 130 | + bool result; |
| 131 | + |
125 | 132 | zassert_ok(modem_pipe_close(tty_pipe), "Failed to close pipe"); |
126 | 133 | zassert_ok(modem_pipe_close(tty_pipe), "Pipe should already be closed"); |
127 | 134 | zassert_ok(modem_pipe_open(tty_pipe), "Failed to open pipe"); |
| 135 | + result = atomic_test_bit(&tty_pipe_events, TEST_MODEM_BACKEND_TTY_PIPE_EVENT_TIDLE_BIT); |
| 136 | + zassert_true(result, "Transmit idle event should be set"); |
128 | 137 | zassert_ok(modem_pipe_open(tty_pipe), "Pipe should already be open"); |
129 | 138 | } |
130 | 139 |
|
@@ -172,12 +181,19 @@ ZTEST(modem_backend_tty_suite, test_transmit) |
172 | 181 | { |
173 | 182 | int ret; |
174 | 183 | char msg[] = "Test me buddy 2"; |
| 184 | + bool result; |
| 185 | + |
| 186 | + result = atomic_test_bit(&tty_pipe_events, TEST_MODEM_BACKEND_TTY_PIPE_EVENT_TIDLE_BIT); |
| 187 | + zassert_false(result, "Transmit idle event should not be set"); |
175 | 188 |
|
176 | 189 | ret = modem_pipe_transmit(tty_pipe, msg, sizeof(msg)); |
177 | 190 | zassert_true(ret == sizeof(msg), "Failed to transmit using pipe"); |
178 | 191 |
|
179 | 192 | k_sleep(TEST_MODEM_BACKEND_TTY_OP_DELAY); |
180 | 193 |
|
| 194 | + result = atomic_test_bit(&tty_pipe_events, TEST_MODEM_BACKEND_TTY_PIPE_EVENT_TIDLE_BIT); |
| 195 | + zassert_true(result, "Transmit idle event should be set"); |
| 196 | + |
181 | 197 | ret = read(primary_fd, buffer1, sizeof(buffer1)); |
182 | 198 | zassert_true(ret == sizeof(msg), "Read incorrect number of bytes"); |
183 | 199 | ret = memcmp(msg, buffer1, sizeof(msg)); |
|
0 commit comments