Ivan Grokhotkov 8df306ab60 freertos,esp_system: make dependencies on some components optional %!s(int64=4) %!d(string=hai) anos
..
main 6582f7070e Update tests for assert and abort %!s(int64=4) %!d(string=hai) anos
test_panic_util 1ecdab3a70 CI: Debug GDB issues %!s(int64=4) %!d(string=hai) anos
CMakeLists.txt 8df306ab60 freertos,esp_system: make dependencies on some components optional %!s(int64=4) %!d(string=hai) anos
README.md 1457c42f6f bugfix/esp-gdbstrub: add missing function for esp32c3/esp32h2. %!s(int64=4) %!d(string=hai) anos
app_test.py 6582f7070e Update tests for assert and abort %!s(int64=4) %!d(string=hai) anos
panic_tests.py 3e3fa4bff2 test_apps/panic: remove workaround for incorrect GDB backtrace %!s(int64=4) %!d(string=hai) anos
sdkconfig.ci.coredump_flash_bin_crc 20af94ff53 Coredump config option rename throughout IDF %!s(int64=5) %!d(string=hai) anos
sdkconfig.ci.coredump_flash_elf_sha 20af94ff53 Coredump config option rename throughout IDF %!s(int64=5) %!d(string=hai) anos
sdkconfig.ci.coredump_uart_bin_crc 20af94ff53 Coredump config option rename throughout IDF %!s(int64=5) %!d(string=hai) anos
sdkconfig.ci.coredump_uart_elf_crc 20af94ff53 Coredump config option rename throughout IDF %!s(int64=5) %!d(string=hai) anos
sdkconfig.ci.gdbstub b1d64d1a61 test/panic: add gdbstub test configuration %!s(int64=5) %!d(string=hai) anos
sdkconfig.ci.panic 418b68a197 test_apps: add panic test %!s(int64=5) %!d(string=hai) anos
sdkconfig.defaults 9069f70db3 system: add option to enable undefined behavior sanitizer (UBSAN) %!s(int64=4) %!d(string=hai) anos

README.md

Supported Targets ESP32 ESP32-S2 ESP32-S3 ESP32-C3 ESP32-H2

Building

Several configurations are provided as sdkconfig.ci.XXX and serve as a template.

Example with configuration "panic" for target ESP32

idf.py set-target esp32
cat sdkconfig.defaults sdkconfig.ci.panic > sdkconfig
idf.py build

Running

All the setup needs to be done as described in the test apps README, except that the test cases need to be specified when running the app:

python app_test.py test_panic_illegal_instruction

Multiple test cases are passed as additional arguments:

python app_test.py test_panic_illegal_instruction test_panic_int_wdt test_panic_storeprohibited

Note that you need to pick the correct test cases at run time according to the configuration you built before. The above examples are for configuration "panic"