|
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