ci: migrate system test apps to pytest

This commit is contained in:
Marius Vikhammer
2022-07-21 12:23:22 +08:00
parent b823831a26
commit c2a5f48498
8 changed files with 149 additions and 171 deletions
@@ -1,54 +0,0 @@
# SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: Apache-2.0
import glob
import os
from typing import Any
import ttfw_idf
from tiny_test_fw import Utility
def test_loop(env, config_names): # type: (Any, Any) -> None
for name in config_names:
Utility.console_log("Checking config \"{}\"... ".format(name), end='')
dut = env.get_dut('flash_psram', 'tools/test_apps/system/flash_psram', app_config_name=name)
dut.start_app()
dut.expect('flash psram test success')
env.close_dut(dut.name)
Utility.console_log('done')
# For F8R8 board (Octal Flash and Octal PSRAM)
@ttfw_idf.idf_custom_test(env_tag='MSPI_F8R8', target=['esp32s3'])
def test_flash8_psram8(env, _): # type: (Any, Any) -> None
config_files = glob.glob(os.path.join(os.path.dirname(__file__), 'sdkconfig.ci.f8r8*'))
config_names = [os.path.basename(s).replace('sdkconfig.ci.', '') for s in config_files]
test_loop(env, config_names)
# For F4R8 board (Quad Flash and Octal PSRAM)
@ttfw_idf.idf_custom_test(env_tag='MSPI_F4R8', target=['esp32s3'])
def test_flash4_psram8(env, _): # type: (Any, Any) -> None
config_files = glob.glob(os.path.join(os.path.dirname(__file__), 'sdkconfig.ci.f4r8*'))
config_names = [os.path.basename(s).replace('sdkconfig.ci.', '') for s in config_files]
test_loop(env, config_names)
# For F4R4 board (Quad Flash and Quad PSRAM)
@ttfw_idf.idf_custom_test(env_tag='MSPI_F4R4', target=['esp32s3'])
def test_flash4_psram4(env, _): # type: (Any, Any) -> None
config_files = glob.glob(os.path.join(os.path.dirname(__file__), 'sdkconfig.ci.f4r4*'))
config_names = [os.path.basename(s).replace('sdkconfig.ci.', '') for s in config_files]
test_loop(env, config_names)
if __name__ == '__main__':
test_flash8_psram8()
test_flash4_psram8()
test_flash4_psram4()
@@ -0,0 +1,39 @@
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: CC0-1.0
import os
import pathlib
import pytest
from pytest_embedded import Dut
MSPI_F8R8_configs = [p.name.replace('sdkconfig.ci.', '') for p in pathlib.Path(os.path.dirname(__file__)).glob('sdkconfig.ci.f8r8*')]
@pytest.mark.esp32s3
@pytest.mark.MSPI_F8R8
@pytest.mark.parametrize('config', MSPI_F8R8_configs, indirect=True)
def test_flash8_psram8(dut: Dut) -> None:
dut.expect_exact('flash psram test success')
# For F4R8 board (Quad Flash and Octal PSRAM)
MSPI_F4R8_configs = [p.name.replace('sdkconfig.ci.', '') for p in pathlib.Path(os.path.dirname(__file__)).glob('sdkconfig.ci.f4r8*')]
@pytest.mark.esp32s3
@pytest.mark.MSPI_F4R8
@pytest.mark.parametrize('config', MSPI_F4R8_configs, indirect=True)
def test_flash4_psram8(dut: Dut) -> None:
dut.expect_exact('flash psram test success')
# For F4R4 board (Quad Flash and Quad PSRAM)
MSPI_F4R4_configs = [p.name.replace('sdkconfig.ci.', '') for p in pathlib.Path(os.path.dirname(__file__)).glob('sdkconfig.ci.f4r4*')]
@pytest.mark.esp32s3
@pytest.mark.MSPI_F4R4
@pytest.mark.parametrize('config', MSPI_F4R4_configs, indirect=True)
def test_flash4_psram4(dut: Dut) -> None:
dut.expect_exact('flash psram test success')