feat(example): enable powersave CI test by soc cap

This commit is contained in:
wuzhenghui
2026-09-01 11:44:50 +08:00
parent 378590ccff
commit 5a4f4d0954
4 changed files with 18 additions and 17 deletions
+2 -11
View File
@@ -43,9 +43,6 @@ examples/wifi/getting_started:
- if: IDF_TARGET in ["esp32p4", "esp32h2"] - if: IDF_TARGET in ["esp32p4", "esp32h2"]
temporary: true temporary: true
reason: lack of runners reason: lack of runners
- if: IDF_TARGET in ["esp32s31"]
temporary: true
reason: lack of runners
depends_filepatterns: depends_filepatterns:
- examples/wifi/getting_started/**/* - examples/wifi/getting_started/**/*
@@ -82,14 +79,8 @@ examples/wifi/itwt:
examples/wifi/power_save: examples/wifi/power_save:
<<: *wifi_depends_default <<: *wifi_depends_default
disable: enable:
- if: SOC_WIFI_SUPPORTED != 1 - if: SOC_WIFI_SUPPORTED == 1
temporary: true
reason: requires hardware support
disable_test:
- if: IDF_TARGET in ["esp32s31"]
temporary: true
reason: lack of runners
depends_components: depends_components:
- *common_components - *common_components
- esp_wifi - esp_wifi
@@ -5,6 +5,7 @@ import os.path
import pytest import pytest
from pytest_embedded_idf.dut import IdfDut from pytest_embedded_idf.dut import IdfDut
from pytest_embedded_idf.utils import idf_parametrize from pytest_embedded_idf.utils import idf_parametrize
from pytest_embedded_idf.utils import soc_filtered_targets
# @pytest.mark.supported_targets # @pytest.mark.supported_targets
# This test should support all targets, even between different target types # This test should support all targets, even between different target types
@@ -33,7 +34,7 @@ from pytest_embedded_idf.utils import idf_parametrize
) )
@idf_parametrize( @idf_parametrize(
'target', 'target',
['esp32', 'esp32c3', 'esp32s2', 'esp32s3', 'esp32c5', 'esp32c6', 'esp32c61'], soc_filtered_targets('SOC_WIFI_SUPPORTED == 1 and IDF_TARGET not in ["esp32c2"]'),
indirect=['target'], indirect=['target'],
) )
def test_wifi_getting_started(dut: tuple[IdfDut, IdfDut]) -> None: def test_wifi_getting_started(dut: tuple[IdfDut, IdfDut]) -> None:
@@ -6,6 +6,7 @@ from collections.abc import Callable
import pytest import pytest
from pytest_embedded import Dut from pytest_embedded import Dut
from pytest_embedded_idf.utils import idf_parametrize from pytest_embedded_idf.utils import idf_parametrize
from pytest_embedded_idf.utils import soc_filtered_targets
# diff of esp32s2/esp32s3 ~45K, others ~50K # diff of esp32s2/esp32s3 ~45K, others ~50K
@@ -20,8 +21,7 @@ DIFF_THRESHOLD = {
@pytest.mark.parametrize('count, config, skip_autoflash', [(2, 'default|enable_softap', 'y')], indirect=True) @pytest.mark.parametrize('count, config, skip_autoflash', [(2, 'default|enable_softap', 'y')], indirect=True)
@idf_parametrize( @idf_parametrize(
'target', 'target',
# esp32s31: no two_duts runner in CI (rev_default) yet soc_filtered_targets('SOC_WIFI_SUPPORTED == 1'),
['esp32', 'esp32c2', 'esp32c3', 'esp32s2', 'esp32s3', 'esp32c5', 'esp32c6', 'esp32c61'],
indirect=['target'], indirect=['target'],
) )
def test_wifi_sdkconfig_disable_softap_save_binary_size( def test_wifi_sdkconfig_disable_softap_save_binary_size(
@@ -7,6 +7,7 @@ import pytest
from common_test_methods import get_env_config_variable from common_test_methods import get_env_config_variable
from pytest_embedded import Dut from pytest_embedded import Dut
from pytest_embedded_idf.utils import idf_parametrize from pytest_embedded_idf.utils import idf_parametrize
from pytest_embedded_idf.utils import soc_filtered_targets
bad_event_str = [ bad_event_str = [
'bcn_timeout', 'bcn_timeout',
@@ -44,7 +45,7 @@ def _run_test(dut: Dut) -> None:
@pytest.mark.wifi_ap @pytest.mark.wifi_ap
@idf_parametrize( @idf_parametrize(
'target', 'target',
['esp32', 'esp32c2', 'esp32s2', 'esp32c3', 'esp32s3', 'esp32c6', 'esp32c5', 'esp32c61'], soc_filtered_targets('SOC_WIFI_SUPPORTED == 1'),
indirect=['target'], indirect=['target'],
) )
def test_wifi_power_save(dut: Dut) -> None: def test_wifi_power_save(dut: Dut) -> None:
@@ -59,7 +60,11 @@ def test_wifi_power_save(dut: Dut) -> None:
], ],
indirect=True, indirect=True,
) )
@idf_parametrize('target', ['esp32c6', 'esp32c5', 'esp32c61'], indirect=['target']) @idf_parametrize(
'target',
soc_filtered_targets('SOC_WIFI_SUPPORTED == 1 and SOC_PM_SUPPORT_TOP_PD == 1'),
indirect=['target'],
)
def test_wifi_power_save_pd_top(dut: Dut) -> None: def test_wifi_power_save_pd_top(dut: Dut) -> None:
_run_test(dut) _run_test(dut)
@@ -72,7 +77,11 @@ def test_wifi_power_save_pd_top(dut: Dut) -> None:
], ],
indirect=True, indirect=True,
) )
@idf_parametrize('target', ['esp32c6', 'esp32c5', 'esp32c61'], indirect=['target']) @idf_parametrize(
'target',
soc_filtered_targets('SOC_WIFI_SUPPORTED == 1 and SOC_PM_SUPPORT_PMU_MODEM_STATE == 1'),
indirect=['target'],
)
def test_wifi_power_save_pd_modem(dut: Dut) -> None: def test_wifi_power_save_pd_modem(dut: Dut) -> None:
_run_test(dut) _run_test(dut)