2022-07-29 05:28:16 -04:00
|
|
|
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
|
|
|
# SPDX-License-Identifier: CC0-1.0
|
|
|
|
import logging
|
2020-04-22 10:46:23 -04:00
|
|
|
import os
|
2022-07-29 05:28:16 -04:00
|
|
|
from typing import List
|
2021-01-25 21:49:01 -05:00
|
|
|
|
2022-07-29 05:28:16 -04:00
|
|
|
import pytest
|
|
|
|
from pytest_embedded import Dut
|
2020-04-22 10:46:23 -04:00
|
|
|
|
|
|
|
|
2022-07-29 05:28:16 -04:00
|
|
|
def get_socket_msgs(i: int) -> List[str]:
|
2020-04-22 10:46:23 -04:00
|
|
|
msg = 'Socket message S{}'.format(i)
|
|
|
|
return ['uart_select_example: {} bytes were written to socket: {}'.format(len(msg), msg),
|
|
|
|
'uart_select_example: {} bytes were received through socket: {}'.format(len(msg), msg)]
|
|
|
|
|
|
|
|
|
2022-07-29 05:28:16 -04:00
|
|
|
def get_uart_msgs(i: int) -> List[str]:
|
2020-04-22 10:46:23 -04:00
|
|
|
msg = 'UART message U{}'.format(i)
|
|
|
|
return ['uart_select_example: {} bytes were sent to UART1: {}'.format(len(msg), msg),
|
|
|
|
'uart_select_example: {} bytes were received through UART1: {}'.format(len(msg), msg)]
|
|
|
|
|
|
|
|
|
2022-07-29 05:28:16 -04:00
|
|
|
@pytest.mark.esp32
|
|
|
|
@pytest.mark.esp32c3
|
|
|
|
@pytest.mark.generic
|
|
|
|
def test_examples_select(dut: Dut) -> None:
|
2020-04-22 10:46:23 -04:00
|
|
|
|
2022-07-29 05:28:16 -04:00
|
|
|
dut.expect_exact('cpu_start: Starting scheduler', timeout=30)
|
2020-04-22 10:46:23 -04:00
|
|
|
|
|
|
|
exp_list = []
|
|
|
|
for i in range(1, 10):
|
|
|
|
exp_list += get_socket_msgs(i)
|
|
|
|
exp_list += get_uart_msgs(i)
|
|
|
|
|
2022-07-29 05:28:16 -04:00
|
|
|
logging.info('Expecting:{}{}'.format(os.linesep, os.linesep.join(exp_list)))
|
|
|
|
dut.expect(exp_list, timeout=60, expect_all=True)
|