esp-idf/examples/peripherals/usb/host/msc/pytest_usb_host_msc.py
2024-01-30 15:07:11 +01:00

29 lines
1.0 KiB
Python

# SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: CC0-1.0
import pytest
from pytest_embedded import Dut
@pytest.mark.esp32s2
@pytest.mark.esp32s3
@pytest.mark.esp32p4
@pytest.mark.temp_skip_ci(targets=['esp32s2', 'esp32p4'], reason='lack of runners with usb_host_flash_disk tag')
@pytest.mark.usb_host_flash_disk
def test_usb_host_msc_example(dut: Dut) -> None:
# Check result of file_operations()
dut.expect_exact("example: Read from file '/usb/esp/test.txt': 'Hello World!'")
# Check result of speed_test()
write_throughput = float(dut.expect(r'example: Write speed ([0-9]*[.]?[0-9]+) MiB')[1].decode())
read_throughput = float(dut.expect(r'example: Read speed ([0-9]*[.]?[0-9]+) MiB')[1].decode())
# These values should be updated for HS targets
if write_throughput > 0.9:
print('Write throughput put OK')
else:
print('write throughput too slow!')
if read_throughput > 1.0:
print('Read throughput put OK')
else:
print('Read throughput too slow!')