CI: optimize example protocol test cases

This commit is contained in:
Chen Yudong 2022-12-22 11:03:22 +08:00
parent cb2fde3e3f
commit 1871825d7b
3 changed files with 21 additions and 5 deletions

View File

@ -12,7 +12,7 @@ def test_examples_icmp_echo(env, extra_data):
dut = env.get_dut('icmp_echo', 'examples/protocols/icmp_echo')
dut.start_app()
dut.expect('example_connect: Connected to')
dut.expect('example_connect: Connected to', timeout=60)
dut.expect('esp>')
ping_dest = os.getenv('EXAMPLE_ICMP_SERVER', 'www.espressif.com')

View File

@ -68,6 +68,7 @@ def test_examples_protocol_socket_tcpserver(env, extra_data):
ipv6_r = r':'.join((r'[0-9a-fA-F]{4}',) * 8) # expect all 8 octets from IPv6 (assumes it's printed in the long form)
ipv6 = dut1.expect(re.compile(r' IPv6 address: ({})'.format(ipv6_r)), timeout=30)[0]
print('Connected with IPv4={} and IPv6={}'.format(ipv4, ipv6))
dut1.expect('Socket listening')
# test IPv4
received = tcp_client(ipv4, MESSAGE)

View File

@ -17,6 +17,7 @@ from threading import Event, Thread
import netifaces
import ttfw_idf
from tiny_test_fw.DUT import ExpectTimeout
# ----------- Config ----------
PORT = 3333
@ -104,14 +105,28 @@ def test_examples_protocol_socket_udpclient(env, extra_data):
with UdpServer(PORT, socket.AF_INET):
server_ip = get_my_ip(netifaces.AF_INET)
print('Connect udp client to server IP={}'.format(server_ip))
dut1.write(server_ip)
dut1.expect(re.compile(r'OK: Message from ESP32'))
for _ in range(3):
try:
dut1.write(server_ip)
dut1.expect(re.compile(r'OK: Message from ESP32'))
break
except ExpectTimeout:
pass
else:
raise ValueError('Failed to send/recv udp packets.')
# test IPv6
with UdpServer(PORT, socket.AF_INET6):
server_ip = get_my_ip(netifaces.AF_INET6)
print('Connect udp client to server IP={}'.format(server_ip))
dut1.write(server_ip)
dut1.expect(re.compile(r'OK: Message from ESP32'))
for _ in range(3):
try:
dut1.write(server_ip)
dut1.expect(re.compile(r'OK: Message from ESP32'))
break
except ExpectTimeout:
pass
else:
raise ValueError('Failed to send/recv udp packets.')
if __name__ == '__main__':