From 28c8a2ec0eb6c82725c32acc3fc4a67f62e8630d Mon Sep 17 00:00:00 2001 From: "sonika.rathi" Date: Wed, 24 Jun 2026 13:54:33 +0200 Subject: [PATCH] fix(fatfs): re-enable fatfs and vfs psram/ccomp CI tests --- .../flash_wl/pytest_fatfs_flash_wl.py | 14 ++++++++++ .../test_apps/flash_wl/sdkconfig.ci.psram | 0 .../test_apps/sdcard/pytest_fatfs_sdcard.py | 27 +++++++++++++++++++ .../fatfs/test_apps/sdcard/sdkconfig.ci.psram | 0 .../spiffs/test_apps/.build-test-rules.yml | 2 +- components/spiffs/test_apps/pytest_spiffs.py | 13 +++++++++ .../spiffs/test_apps/sdkconfig.ci.psram | 0 .../vfs/test_apps/.build-test-rules.yml | 2 +- components/vfs/test_apps/pytest_vfs.py | 26 ++++++++++++++++++ components/vfs/test_apps/sdkconfig.ci.ccomp | 0 components/vfs/test_apps/sdkconfig.ci.psram | 0 11 files changed, 82 insertions(+), 2 deletions(-) create mode 100644 components/fatfs/test_apps/flash_wl/sdkconfig.ci.psram create mode 100644 components/fatfs/test_apps/sdcard/sdkconfig.ci.psram create mode 100644 components/spiffs/test_apps/sdkconfig.ci.psram create mode 100644 components/vfs/test_apps/sdkconfig.ci.ccomp create mode 100644 components/vfs/test_apps/sdkconfig.ci.psram diff --git a/components/fatfs/test_apps/flash_wl/pytest_fatfs_flash_wl.py b/components/fatfs/test_apps/flash_wl/pytest_fatfs_flash_wl.py index 49f61cb1a7d..93a100891be 100644 --- a/components/fatfs/test_apps/flash_wl/pytest_fatfs_flash_wl.py +++ b/components/fatfs/test_apps/flash_wl/pytest_fatfs_flash_wl.py @@ -20,3 +20,17 @@ from pytest_embedded_idf.utils import idf_parametrize @idf_parametrize('target', ['esp32', 'esp32c3'], indirect=['target']) def test_fatfs_flash_wl_generic(dut: Dut) -> None: dut.run_all_single_board_cases(timeout=240) + + +@pytest.mark.generic +@pytest.mark.flaky(reruns=2, reruns_delay=5) +@pytest.mark.psram +@pytest.mark.parametrize( + 'config', + [ + 'psram', + ], +) +@idf_parametrize('target', ['esp32'], indirect=['target']) +def test_fatfs_flash_wl_psram(dut: Dut) -> None: + dut.run_all_single_board_cases(timeout=180) diff --git a/components/fatfs/test_apps/flash_wl/sdkconfig.ci.psram b/components/fatfs/test_apps/flash_wl/sdkconfig.ci.psram new file mode 100644 index 00000000000..e69de29bb2d diff --git a/components/fatfs/test_apps/sdcard/pytest_fatfs_sdcard.py b/components/fatfs/test_apps/sdcard/pytest_fatfs_sdcard.py index 86291941f41..7e042ef9e1b 100644 --- a/components/fatfs/test_apps/sdcard/pytest_fatfs_sdcard.py +++ b/components/fatfs/test_apps/sdcard/pytest_fatfs_sdcard.py @@ -30,3 +30,30 @@ def test_fatfs_sdcard_generic_sdmmc(dut: Dut) -> None: @idf_parametrize('target', ['esp32', 'esp32c3'], indirect=['target']) def test_fatfs_sdcard_generic_sdspi(dut: Dut) -> None: dut.run_all_single_board_cases(group='sdspi', timeout=180) + + +@pytest.mark.sdcard_sdmode +@pytest.mark.psram +@pytest.mark.parametrize( + 'config', + [ + 'psram', + ], +) +@idf_parametrize('target', ['esp32'], indirect=['target']) +def test_fatfs_sdcard_psram_sdmmc(dut: Dut) -> None: + dut.run_all_single_board_cases(group='sdmmc', timeout=180) + + +@pytest.mark.temp_skip_ci(targets=['esp32'], reason='IDFCI-2058, temporary lack runner') +@pytest.mark.sdcard_spimode +@pytest.mark.psram +@pytest.mark.parametrize( + 'config', + [ + 'psram', + ], +) +@idf_parametrize('target', ['esp32'], indirect=['target']) +def test_fatfs_sdcard_psram_sdspi(dut: Dut) -> None: + dut.run_all_single_board_cases(group='sdspi', timeout=180) diff --git a/components/fatfs/test_apps/sdcard/sdkconfig.ci.psram b/components/fatfs/test_apps/sdcard/sdkconfig.ci.psram new file mode 100644 index 00000000000..e69de29bb2d diff --git a/components/spiffs/test_apps/.build-test-rules.yml b/components/spiffs/test_apps/.build-test-rules.yml index e02dd9e7992..96d1327ff74 100644 --- a/components/spiffs/test_apps/.build-test-rules.yml +++ b/components/spiffs/test_apps/.build-test-rules.yml @@ -1,6 +1,6 @@ components/spiffs/test_apps: disable_test: - - if: IDF_TARGET not in ["esp32", "esp32c3"] + - if: IDF_TARGET not in ["esp32", "esp32c3", "esp32s3"] reason: These chips should be sufficient for test coverage (Xtensa and RISC-V, single and dual core) depends_components: diff --git a/components/spiffs/test_apps/pytest_spiffs.py b/components/spiffs/test_apps/pytest_spiffs.py index 3580865c787..f8dea17564c 100644 --- a/components/spiffs/test_apps/pytest_spiffs.py +++ b/components/spiffs/test_apps/pytest_spiffs.py @@ -18,3 +18,16 @@ from pytest_embedded_idf.utils import idf_parametrize @idf_parametrize('target', ['esp32', 'esp32c3'], indirect=['target']) def test_spiffs_generic(dut: Dut) -> None: dut.run_all_single_board_cases(timeout=120) + + +@pytest.mark.quad_psram +@pytest.mark.parametrize( + 'config', + [ + 'psram', + ], + indirect=True, +) +@idf_parametrize('target', ['esp32s3'], indirect=['target']) +def test_spiffs_psram(dut: Dut) -> None: + dut.run_all_single_board_cases(timeout=120) diff --git a/components/spiffs/test_apps/sdkconfig.ci.psram b/components/spiffs/test_apps/sdkconfig.ci.psram new file mode 100644 index 00000000000..e69de29bb2d diff --git a/components/vfs/test_apps/.build-test-rules.yml b/components/vfs/test_apps/.build-test-rules.yml index 14687091da4..b1dbaa0ac65 100644 --- a/components/vfs/test_apps/.build-test-rules.yml +++ b/components/vfs/test_apps/.build-test-rules.yml @@ -5,7 +5,7 @@ components/vfs/test_apps: reason: not support yet # TODO: [esp32h21] IDF-11593 [ESP32H4] IDF-12372 disable_test: - - if: IDF_TARGET not in ["esp32c2", "esp32c3", "esp32c6", "esp32h2"] + - if: IDF_TARGET not in ["esp32", "esp32c2", "esp32c3", "esp32c6", "esp32h2", "esp32s3"] temporary: true reason: lack of runners diff --git a/components/vfs/test_apps/pytest_vfs.py b/components/vfs/test_apps/pytest_vfs.py index 6c7baf56cc1..032a8bb83bf 100644 --- a/components/vfs/test_apps/pytest_vfs.py +++ b/components/vfs/test_apps/pytest_vfs.py @@ -18,3 +18,29 @@ from pytest_embedded_idf.utils import idf_parametrize @idf_parametrize('target', ['esp32c2', 'esp32c3', 'esp32c6', 'esp32h2'], indirect=['target']) def test_vfs_default(dut: Dut) -> None: dut.run_all_single_board_cases() + + +@pytest.mark.generic +@pytest.mark.parametrize( + 'config', + [ + 'ccomp', + ], + indirect=True, +) +@idf_parametrize('target', ['esp32'], indirect=['target']) +def test_vfs_ccomp(dut: Dut) -> None: + dut.run_all_single_board_cases() + + +@pytest.mark.quad_psram +@pytest.mark.parametrize( + 'config', + [ + 'psram', + ], + indirect=True, +) +@idf_parametrize('target', ['esp32s3'], indirect=['target']) +def test_vfs_psram(dut: Dut) -> None: + dut.run_all_single_board_cases() diff --git a/components/vfs/test_apps/sdkconfig.ci.ccomp b/components/vfs/test_apps/sdkconfig.ci.ccomp new file mode 100644 index 00000000000..e69de29bb2d diff --git a/components/vfs/test_apps/sdkconfig.ci.psram b/components/vfs/test_apps/sdkconfig.ci.psram new file mode 100644 index 00000000000..e69de29bb2d