mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
Merge branch 'ci/system_test_apps_optimize' into 'master'
ci: cleanup tools/system test apps See merge request espressif/esp-idf!23886
This commit is contained in:
commit
c60b79978d
@ -1610,7 +1610,6 @@ tools/templates/sample_component/include/main.h
|
|||||||
tools/templates/sample_component/main.c
|
tools/templates/sample_component/main.c
|
||||||
tools/test_apps/build_system/embed_test/main/test_main.c
|
tools/test_apps/build_system/embed_test/main/test_main.c
|
||||||
tools/test_apps/build_system/ldalign_test/main/test_main.c
|
tools/test_apps/build_system/ldalign_test/main/test_main.c
|
||||||
tools/test_apps/build_system/ldgen_test/check_placements.py
|
|
||||||
tools/test_apps/build_system/ldgen_test/main/src1.c
|
tools/test_apps/build_system/ldgen_test/main/src1.c
|
||||||
tools/test_apps/build_system/ldgen_test/main/src2.c
|
tools/test_apps/build_system/ldgen_test/main/src2.c
|
||||||
tools/test_apps/build_system/ldgen_test/main/test_main.c
|
tools/test_apps/build_system/ldgen_test/main/test_main.c
|
||||||
|
@ -5,11 +5,11 @@ tools/test_apps/build_system/custom_partition_subtypes:
|
|||||||
- if: IDF_TARGET in ["esp32", "linux"]
|
- if: IDF_TARGET in ["esp32", "linux"]
|
||||||
reason: the test should be run on ESP32 and linux
|
reason: the test should be run on ESP32 and linux
|
||||||
|
|
||||||
tools/test_apps/build_system/ldgen_test:
|
tools/test_apps/build_system/embed_test:
|
||||||
disable:
|
enable:
|
||||||
- if: IDF_TARGET == "esp32c2"
|
- if: IDF_TARGET in ["esp32", "esp32c3"]
|
||||||
temporary: true
|
temporary: false
|
||||||
reason: target esp32c2 is not supported yet
|
reason: Hardware independent feature, no need to test on all targets
|
||||||
|
|
||||||
tools/test_apps/linux_compatible/driver_mock:
|
tools/test_apps/linux_compatible/driver_mock:
|
||||||
enable:
|
enable:
|
||||||
@ -168,14 +168,6 @@ tools/test_apps/system/no_embedded_paths:
|
|||||||
temporary: true
|
temporary: true
|
||||||
reason: the other targets are not tested yet
|
reason: the other targets are not tested yet
|
||||||
|
|
||||||
tools/test_apps/system/panic:
|
|
||||||
enable:
|
|
||||||
- if: INCLUDE_DEFAULT == 1
|
|
||||||
disable_test:
|
|
||||||
- if: IDF_TARGET not in ["esp32", "esp32s2", "esp32c3", "esp32s3", "esp32c2", "esp32c6", "esp32h2"]
|
|
||||||
temporary: true
|
|
||||||
reason: test app not ported to this target yet
|
|
||||||
|
|
||||||
tools/test_apps/system/ram_loadable_app:
|
tools/test_apps/system/ram_loadable_app:
|
||||||
disable:
|
disable:
|
||||||
- if: IDF_TARGET == "esp32h2"
|
- if: IDF_TARGET == "esp32h2"
|
||||||
@ -183,8 +175,8 @@ tools/test_apps/system/ram_loadable_app:
|
|||||||
reason: lack of runners
|
reason: lack of runners
|
||||||
|
|
||||||
tools/test_apps/system/startup:
|
tools/test_apps/system/startup:
|
||||||
enable:
|
disable:
|
||||||
- if: INCLUDE_DEFAULT == 1 or IDF_TARGET in ["esp32c6"] # preview targets
|
- if: CONFIG_NAME == "main_task_cpu1" and IDF_TARGET not in ["esp32", "esp32s3"]
|
||||||
|
|
||||||
tools/test_apps/system/test_watchpoint:
|
tools/test_apps/system/test_watchpoint:
|
||||||
enable:
|
enable:
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S2 | ESP32-S3 |
|
| Supported Targets | ESP32 | ESP32-C3 |
|
||||||
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- |
|
| ----------------- | ----- | -------- |
|
||||||
|
@ -8,8 +8,12 @@ project(ldgen_test)
|
|||||||
idf_build_get_property(python PYTHON)
|
idf_build_get_property(python PYTHON)
|
||||||
idf_build_get_property(elf EXECUTABLE)
|
idf_build_get_property(elf EXECUTABLE)
|
||||||
|
|
||||||
|
if(NOT CONFIG_SOC_RTC_MEM_SUPPORTED)
|
||||||
|
set(args "--no-rtc")
|
||||||
|
endif()
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
TARGET ${elf}
|
TARGET ${elf}
|
||||||
POST_BUILD
|
POST_BUILD
|
||||||
COMMAND ${python} ${CMAKE_CURRENT_LIST_DIR}/check_placements.py ${CMAKE_OBJDUMP} $<TARGET_FILE:${elf}>
|
COMMAND ${python} ${CMAKE_CURRENT_LIST_DIR}/check_placements.py ${args} ${CMAKE_OBJDUMP} $<TARGET_FILE:${elf}>
|
||||||
)
|
)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
| Supported Targets | ESP32 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S2 | ESP32-S3 |
|
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S2 | ESP32-S3 |
|
||||||
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- |
|
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- |
|
||||||
|
|
||||||
Runs a build test to check ldgen places libraries, objects and symbols
|
Runs a build test to check ldgen places libraries, objects and symbols
|
||||||
correctly as specified in the linker fragments. Specifically, this app
|
correctly as specified in the linker fragments. Specifically, this app
|
||||||
|
@ -1,18 +1,7 @@
|
|||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
#
|
#
|
||||||
# Copyright 2020 Espressif Systems (Shanghai) PTE LTD
|
# SPDX-FileCopyrightText: 2020-2023 Espressif Systems (Shanghai) CO LTD
|
||||||
#
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
#
|
#
|
||||||
|
|
||||||
# Check placements in this test app for main
|
# Check placements in this test app for main
|
||||||
@ -27,6 +16,7 @@ argparser = argparse.ArgumentParser()
|
|||||||
|
|
||||||
argparser.add_argument('objdump')
|
argparser.add_argument('objdump')
|
||||||
argparser.add_argument('elf')
|
argparser.add_argument('elf')
|
||||||
|
argparser.add_argument('--no-rtc', action='store_true')
|
||||||
|
|
||||||
args = argparser.parse_args()
|
args = argparser.parse_args()
|
||||||
|
|
||||||
@ -68,7 +58,8 @@ assert sym1_end % 12 == 0, '_sym1_end is not aligned as specified in linker frag
|
|||||||
print('check placement pass: _sym1_start < func1 < __sym1_end and alignments checked')
|
print('check placement pass: _sym1_start < func1 < __sym1_end and alignments checked')
|
||||||
|
|
||||||
# src1:func2 (rtc) - explicit mapping for func2 using 'rtc' scheme
|
# src1:func2 (rtc) - explicit mapping for func2 using 'rtc' scheme
|
||||||
check_location('func2', '.rtc.text')
|
if not args.no_rtc:
|
||||||
|
check_location('func2', '.rtc.text')
|
||||||
|
|
||||||
# src1 (default) - only func3 in src1 remains that has not been
|
# src1 (default) - only func3 in src1 remains that has not been
|
||||||
# mapped using a different scheme
|
# mapped using a different scheme
|
||||||
|
@ -1,6 +0,0 @@
|
|||||||
# The following lines of boilerplate have to be in your project's
|
|
||||||
# CMakeLists in this exact order for cmake to work correctly
|
|
||||||
cmake_minimum_required(VERSION 3.16)
|
|
||||||
|
|
||||||
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
|
|
||||||
project(rsource_test)
|
|
@ -1,5 +0,0 @@
|
|||||||
menu "RSOURCE test"
|
|
||||||
config RSOURCE_EXTRA_CONFIG
|
|
||||||
bool "rsource extra config"
|
|
||||||
default y
|
|
||||||
endmenu
|
|
@ -1,2 +0,0 @@
|
|||||||
| Supported Targets | ESP32 | ESP32-C2 | ESP32-C3 | ESP32-C6 | ESP32-H2 | ESP32-S2 | ESP32-S3 |
|
|
||||||
| ----------------- | ----- | -------- | -------- | -------- | -------- | -------- | -------- |
|
|
@ -1 +0,0 @@
|
|||||||
This project tests that use of rsource in Kconfig files. The main component will source a Kconfig file depending on the target (IDF_TARGET), which in turn will source a Kconfig file in the project directory -- all specified via relative paths.
|
|
@ -1,6 +0,0 @@
|
|||||||
idf_component_register(SRCS "test_main.c"
|
|
||||||
INCLUDE_DIRS ".")
|
|
||||||
|
|
||||||
if(NOT CONFIG_RSOURCE_EXTRA_CONFIG)
|
|
||||||
message(FATAL_ERROR "RSOURCE config not included")
|
|
||||||
endif()
|
|
@ -1 +0,0 @@
|
|||||||
rsource "port/$IDF_TARGET/Kconfig.port"
|
|
@ -1 +0,0 @@
|
|||||||
rsource "../../../Kconfig.extra"
|
|
@ -1 +0,0 @@
|
|||||||
rsource "../../../Kconfig.extra"
|
|
@ -1 +0,0 @@
|
|||||||
rsource "../../../Kconfig.extra"
|
|
@ -1 +0,0 @@
|
|||||||
rsource "../../../Kconfig.extra"
|
|
@ -1 +0,0 @@
|
|||||||
rsource "../../../Kconfig.extra"
|
|
@ -1 +0,0 @@
|
|||||||
rsource "../../../Kconfig.extra"
|
|
@ -1 +0,0 @@
|
|||||||
rsource "../../../Kconfig.extra"
|
|
@ -1,3 +0,0 @@
|
|||||||
void app_main(void)
|
|
||||||
{
|
|
||||||
}
|
|
@ -1,22 +1,20 @@
|
|||||||
# SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
|
# SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
||||||
# SPDX-License-Identifier: CC0-1.0
|
# SPDX-License-Identifier: CC0-1.0
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
from pytest_embedded import Dut
|
from pytest_embedded import Dut
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.supported_targets
|
|
||||||
@pytest.mark.preview_targets
|
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize('config', [
|
@pytest.mark.parametrize('config', [
|
||||||
'default',
|
pytest.param('flash_80m_qio', marks=[pytest.mark.supported_targets]),
|
||||||
'flash_80m_qio',
|
pytest.param('no_vfs', marks=[pytest.mark.supported_targets]),
|
||||||
'no_vfs',
|
pytest.param('no_vfs_partial', marks=[pytest.mark.supported_targets]),
|
||||||
'no_vfs_partial',
|
pytest.param('opt_o0', marks=[pytest.mark.supported_targets]),
|
||||||
'opt_o0',
|
pytest.param('opt_o2', marks=[pytest.mark.supported_targets]),
|
||||||
'opt_o2',
|
pytest.param('stack_check_verbose_log', marks=[pytest.mark.supported_targets]),
|
||||||
'stack_check',
|
pytest.param('sram1_iram', marks=[pytest.mark.esp32]),
|
||||||
'verbose_log',
|
pytest.param('main_task_cpu1', marks=[pytest.mark.esp32, pytest.mark.esp32s3]),
|
||||||
], indirect=True)
|
], indirect=True)
|
||||||
def test_sys_startup(dut: Dut) -> None:
|
def test_sys_startup(dut: Dut) -> None:
|
||||||
dut.expect_exact('app_main running')
|
dut.expect_exact('app_main running')
|
||||||
@ -25,7 +23,9 @@ def test_sys_startup(dut: Dut) -> None:
|
|||||||
@pytest.mark.esp32
|
@pytest.mark.esp32
|
||||||
@pytest.mark.esp32s3
|
@pytest.mark.esp32s3
|
||||||
@pytest.mark.generic
|
@pytest.mark.generic
|
||||||
@pytest.mark.parametrize('config', ['single_core_variant'], indirect=True)
|
@pytest.mark.parametrize('config', [
|
||||||
|
'single_core_variant',
|
||||||
|
], indirect=True)
|
||||||
def test_sys_startup_single_core_variant(dut: Dut) -> None:
|
def test_sys_startup_single_core_variant(dut: Dut) -> None:
|
||||||
dut.expect('Running on single core variant of a chip, but app is built with multi-core support.')
|
dut.expect('Running on single core variant of a chip, but app is built with multi-core support.')
|
||||||
dut.expect(r'abort\(\) was called at PC [0-9xa-f]+ on core 0')
|
dut.expect(r'abort\(\) was called at PC [0-9xa-f]+ on core 0')
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
CONFIG_COMPILER_STACK_CHECK_MODE_ALL=y
|
|
||||||
CONFIG_COMPILER_STACK_CHECK=y
|
|
@ -1,3 +1,5 @@
|
|||||||
|
CONFIG_COMPILER_STACK_CHECK_MODE_ALL=y
|
||||||
|
CONFIG_COMPILER_STACK_CHECK=y
|
||||||
CONFIG_BOOTLOADER_LOG_LEVEL_VERBOSE=y
|
CONFIG_BOOTLOADER_LOG_LEVEL_VERBOSE=y
|
||||||
CONFIG_BOOTLOADER_LOG_LEVEL=5
|
CONFIG_BOOTLOADER_LOG_LEVEL=5
|
||||||
CONFIG_LOG_DEFAULT_LEVEL_VERBOSE=y
|
CONFIG_LOG_DEFAULT_LEVEL_VERBOSE=y
|
Loading…
Reference in New Issue
Block a user