2019-06-28 16:39:21 +00:00
.host_test_template :
2021-02-09 04:31:38 +00:00
extends : .rules:test:host_test
2019-06-28 16:39:21 +00:00
stage : host_test
2021-05-26 08:44:20 +00:00
image : $ESP_ENV_IMAGE
variables :
PYTHON_VER : 3.6 .13
2019-06-28 16:39:21 +00:00
tags :
- host_test
dependencies : [ ]
2021-02-09 04:31:38 +00:00
needs : [ ] # run host_test jobs immediately
2019-06-28 16:39:21 +00:00
test_nvs_on_host :
extends : .host_test_template
script :
- cd components/nvs_flash/test_nvs_host
2021-05-26 08:44:20 +00:00
- make test
2019-06-28 16:39:21 +00:00
test_nvs_coverage :
2020-09-27 03:20:53 +00:00
extends :
- .host_test_template
2021-02-09 04:31:38 +00:00
- .rules:labels:nvs_coverage
2019-06-28 16:39:21 +00:00
artifacts :
paths :
- components/nvs_flash/test_nvs_host/coverage_report
expire_in : 1 week
script :
- cd components/nvs_flash/test_nvs_host
- make coverage_report
2021-01-05 06:39:50 +00:00
# the 'long' host tests take approx 11 hours on our current runners. Adding some margin here for possible CPU contention
timeout : 18 hours
2019-06-28 16:39:21 +00:00
test_partition_table_on_host :
extends : .host_test_template
tags :
- build
script :
- cd components/partition_table/test_gen_esp32part_host
2021-05-26 08:44:20 +00:00
- ./gen_esp32part_tests.py
2019-06-28 16:39:21 +00:00
test_wl_on_host :
extends : .host_test_template
artifacts :
paths :
- components/wear_levelling/test_wl_host/coverage_report.zip
expire_in : 1 week
script :
- cd components/wear_levelling/test_wl_host
- make test
test_fatfs_on_host :
extends : .host_test_template
script :
- cd components/fatfs/test_fatfs_host/
- make test
test_ldgen_on_host :
extends : .host_test_template
script :
- cd tools/ldgen/test
2021-05-26 08:44:20 +00:00
- ./test_fragments.py
- ./test_generation.py
- ./test_entity.py
- ./test_output_commands.py
2020-11-11 03:31:17 +00:00
variables :
LC_ALL : C.UTF-8
2019-06-28 16:39:21 +00:00
2021-02-09 04:31:38 +00:00
.host_fuzzer_test_template :
extends :
- .host_test_template
- .rules:labels:fuzzer_test-weekend_test
2021-05-26 08:44:20 +00:00
image : $AFL_FUZZER_TEST_IMAGE
2021-02-09 04:31:38 +00:00
artifacts :
when : always
paths :
- ${FUZZER_TEST_DIR}/out/crashes
- ${FUZZER_TEST_DIR}/fuzz_output.log
expire_in : 1 week
script :
- export AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES=1 && export AFL_SKIP_CPUFREQ=1
- cd ${FUZZER_TEST_DIR}
# run AFL fuzzer for one hour
- ( ( make ${FUZZER_PARAMS} fuzz | tee fuzz_output.log | grep -v '\(Fuzzing test case\|Entering queue cycle\)' ) || pkill sleep ) &
- ( sleep 3600 || mkdir -p out/crashes/env_failed ) && pkill afl-fuz
# check no crashes found
- test -z "$(ls out/crashes/)" || exit 1
2019-06-28 16:39:21 +00:00
test_mdns_fuzzer_on_host :
extends : .host_fuzzer_test_template
variables :
FUZZER_TEST_DIR : components/mdns/test_afl_fuzz_host
test_lwip_dns_fuzzer_on_host :
extends : .host_fuzzer_test_template
variables :
FUZZER_TEST_DIR : components/lwip/test_afl_host
FUZZER_PARAMS : MODE=dns
test_lwip_dhcp_fuzzer_on_host :
extends : .host_fuzzer_test_template
variables :
FUZZER_TEST_DIR : components/lwip/test_afl_host
FUZZER_PARAMS : MODE=dhcp_client
test_lwip_dhcps_fuzzer_on_host :
extends : .host_fuzzer_test_template
variables :
FUZZER_TEST_DIR : components/lwip/test_afl_host
FUZZER_PARAMS : MODE=dhcp_server
test_spiffs_on_host :
extends : .host_test_template
script :
- cd components/spiffs/test_spiffs_host/
- make test
2021-04-30 16:37:15 +00:00
- cd ../test_spiffsgen
2021-05-26 08:44:20 +00:00
- ./test_spiffsgen.py
2019-06-28 16:39:21 +00:00
test_multi_heap_on_host :
extends : .host_test_template
script :
- cd components/heap/test_multi_heap_host
- ./test_all_configs.sh
2019-09-29 10:04:34 +00:00
test_certificate_bundle_on_host :
extends : .host_test_template
tags :
- build
script :
- cd components/mbedtls/esp_crt_bundle/test_gen_crt_bundle/
2021-05-26 08:44:20 +00:00
- ./test_gen_crt_bundle.py
2019-09-29 10:04:34 +00:00
2019-06-28 16:39:21 +00:00
test_confserver :
extends : .host_test_template
script :
2019-12-12 15:02:36 +00:00
- cd tools/kconfig_new/test/confserver
2021-05-26 08:44:20 +00:00
- ./test_confserver.py
2019-06-28 16:39:21 +00:00
2019-12-12 15:02:36 +00:00
test_gen_kconfig_doc :
extends : .host_test_template
script :
- cd tools/kconfig_new/test/gen_kconfig_doc/
2021-05-26 08:44:20 +00:00
- ./test_target_visibility.py
- ./test_kconfig_out.py
2019-12-12 15:02:36 +00:00
2020-02-24 10:57:48 +00:00
test_confgen :
extends : .host_test_template
script :
- cd tools/kconfig_new/test/confgen/
2021-05-26 08:44:20 +00:00
- ./test_confgen.py
2020-02-24 10:57:48 +00:00
2019-06-28 16:39:21 +00:00
test_idf_monitor :
extends : .host_test_template
artifacts :
# save artifacts always in order to access results which were retried without consequent failure
when : always
paths :
- tools/test_idf_monitor/outputs/*
expire_in : 1 week
script :
- cd ${IDF_PATH}/tools/test_idf_monitor
- ./run_test_idf_monitor.py
test_idf_size :
extends : .host_test_template
artifacts :
when : on_failure
paths :
- tools/test_idf_size/output
- tools/test_idf_size/.coverage
expire_in : 1 week
script :
- cd ${IDF_PATH}/tools/test_idf_size
2021-05-26 08:44:20 +00:00
- ./test.sh
2019-06-28 16:39:21 +00:00
2019-08-21 12:24:14 +00:00
test_idf_py :
extends : .host_test_template
variables :
LC_ALL : C.UTF-8
script :
- cd ${IDF_PATH}/tools/test_idf_py
2021-05-26 08:44:20 +00:00
- ./test_idf_py.py
2019-08-21 12:24:14 +00:00
2019-06-28 16:39:21 +00:00
test_idf_tools :
extends : .host_test_template
2021-06-05 08:59:42 +00:00
artifacts :
when : on_failure
paths :
- tools/tools.new.json
expire_in : 1 week
2019-06-28 16:39:21 +00:00
script :
# Remove Xtensa and ULP toolchains from the PATH, tests will expect a clean environment
2019-11-13 07:39:58 +00:00
- export PATH=$(p=$(echo $PATH | tr ":" "\n" | grep -v "/root/.espressif/tools\|/opt/espressif" | tr "\n" ":"); echo ${p%:})
2019-06-28 16:39:21 +00:00
- cd ${IDF_PATH}/tools/test_idf_tools
2021-05-26 08:44:20 +00:00
- ./test_idf_tools.py
2020-08-28 10:33:48 +00:00
# Test for create virtualenv. It must be invoked from Python, not from virtualenv.
- cd ${IDF_PATH}/tools
- python3 ./idf_tools.py install-python-env
2019-06-28 16:39:21 +00:00
2019-06-18 11:34:05 +00:00
test_esp32_efuse_table_on_host :
2019-06-28 16:39:21 +00:00
extends : .host_test_template
artifacts :
when : on_failure
paths :
- components/efuse/esp32/esp_efuse_table.c
expire_in : 1 week
script :
- cd ${IDF_PATH}/components/efuse/
2021-05-26 08:44:20 +00:00
- ./efuse_table_gen.py ${IDF_PATH}/components/efuse/esp32/esp_efuse_table.csv
2019-06-18 11:34:05 +00:00
- git diff --exit-code -- esp32/esp_efuse_table.c || { echo 'Differences found for esp32 target. Please run make efuse_common_table or idf.py efuse_common_table and commit the changes.'; exit 1; }
2019-06-28 16:39:21 +00:00
- cd ${IDF_PATH}/components/efuse/test_efuse_host
2021-05-26 08:44:20 +00:00
- ./efuse_tests.py
2019-06-28 16:39:21 +00:00
2020-01-17 03:47:08 +00:00
test_esp32s2_efuse_table_on_host :
2019-06-18 11:34:05 +00:00
extends : .host_test_template
artifacts :
when : on_failure
paths :
2020-01-17 03:47:08 +00:00
- components/efuse/esp32s2/esp_efuse_table.c
2019-06-18 11:34:05 +00:00
expire_in : 1 week
script :
- cd ${IDF_PATH}/components/efuse/
2021-05-26 08:44:20 +00:00
- ./efuse_table_gen.py -t "esp32s2" ${IDF_PATH}/components/efuse/esp32s2/esp_efuse_table.csv
2020-01-17 03:47:08 +00:00
- git diff --exit-code -- esp32s2/esp_efuse_table.c || { echo 'Differences found for esp32s2 target. Please run make efuse_common_table or idf.py efuse_common_table and commit the changes.'; exit 1; }
2019-06-18 11:34:05 +00:00
- cd ${IDF_PATH}/components/efuse/test_efuse_host
2021-05-26 08:44:20 +00:00
- ./efuse_tests.py
2020-06-24 02:52:51 +00:00
test_esp32s3_efuse_table_on_host :
extends : .host_test_template
artifacts :
when : on_failure
paths :
- components/efuse/esp32s3/esp_efuse_table.c
expire_in : 1 week
script :
- cd ${IDF_PATH}/components/efuse/
2021-05-26 08:44:20 +00:00
- ./efuse_table_gen.py -t "esp32s3" ${IDF_PATH}/components/efuse/esp32s3/esp_efuse_table.csv
2020-06-24 02:52:51 +00:00
- git diff --exit-code -- esp32s3/esp_efuse_table.c || { echo 'Differences found for esp32s3 target. Please run make efuse_common_table or idf.py efuse_common_table and commit the changes.'; exit 1; }
- cd ${IDF_PATH}/components/efuse/test_efuse_host
2021-05-26 08:44:20 +00:00
- ./efuse_tests.py
2020-06-24 02:52:51 +00:00
test_esp32c3_efuse_table_on_host :
extends : .host_test_template
artifacts :
when : on_failure
paths :
- components/efuse/esp32c3/esp_efuse_table.c
expire_in : 1 week
script :
- cd ${IDF_PATH}/components/efuse/
2021-05-26 08:44:20 +00:00
- ./efuse_table_gen.py -t "esp32c3" ${IDF_PATH}/components/efuse/esp32c3/esp_efuse_table.csv
2020-06-24 02:52:51 +00:00
- git diff --exit-code -- esp32c3/esp_efuse_table.c || { echo 'Differences found for esp32c3 target. Please run make efuse_common_table or idf.py efuse_common_table and commit the changes.'; exit 1; }
- cd ${IDF_PATH}/components/efuse/test_efuse_host
2021-05-26 08:44:20 +00:00
- ./efuse_tests.py
2019-06-18 11:34:05 +00:00
2019-06-28 16:39:21 +00:00
test_espcoredump :
extends : .host_test_template
artifacts :
when : always
paths :
- components/espcoredump/test/.coverage
- components/espcoredump/test/output
expire_in : 1 week
script :
- cd components/espcoredump/test/
2021-05-26 08:44:20 +00:00
- ./test_espcoredump.sh
2019-06-28 16:39:21 +00:00
test_logtrace_proc :
extends : .host_test_template
artifacts :
when : on_failure
paths :
- tools/esp_app_trace/test/logtrace/output
- tools/esp_app_trace/test/logtrace/.coverage
expire_in : 1 week
script :
- cd ${IDF_PATH}/tools/esp_app_trace/test/logtrace
2021-05-26 08:44:20 +00:00
- ./test.sh
2019-06-28 16:39:21 +00:00
test_sysviewtrace_proc :
extends : .host_test_template
artifacts :
when : on_failure
paths :
- tools/esp_app_trace/test/sysview/output
- tools/esp_app_trace/test/sysview/.coverage
expire_in : 1 week
script :
- cd ${IDF_PATH}/tools/esp_app_trace/test/sysview
2021-05-26 08:44:20 +00:00
- ./test.sh
2020-04-06 14:41:44 +00:00
test_mkdfu :
extends : .host_test_template
variables :
LC_ALL : C.UTF-8
script :
- cd ${IDF_PATH}/tools/test_mkdfu
2021-05-26 08:44:20 +00:00
- ./test_mkdfu.py
2020-06-16 11:00:27 +00:00
2020-12-11 15:28:11 +00:00
test_mkuf2 :
extends : .host_test_template
script :
- cd ${IDF_PATH}/tools/test_mkuf2
2021-05-26 08:44:20 +00:00
- ./test_mkuf2.py
2020-12-11 15:28:11 +00:00
2020-05-29 07:56:48 +00:00
test_docs :
2020-09-27 03:20:53 +00:00
extends : .host_test_template
2020-05-29 07:56:48 +00:00
image : $ESP_IDF_DOC_ENV_IMAGE
2021-05-26 08:44:20 +00:00
variables :
2021-06-23 08:06:08 +00:00
PYTHON_VER : 3.6 .13
2020-05-29 07:56:48 +00:00
artifacts :
when : on_failure
paths :
2020-09-27 03:20:53 +00:00
- docs/test/_build/*/*/*/html/*
2020-05-29 07:56:48 +00:00
expire_in : 1 week
script :
2020-09-27 03:20:53 +00:00
- cd ${IDF_PATH}/docs/test
2021-05-26 08:44:20 +00:00
- python -m pip install -r ${IDF_PATH}/docs/requirements.txt
- ./test_docs.py
- ./test_sphinx_idf_extensions.py
2020-05-29 07:56:48 +00:00
2020-11-12 10:52:45 +00:00
test_autocomplete :
2020-11-07 11:45:54 +00:00
extends : .host_test_template
image : $CI_DOCKER_REGISTRY/linux-shells:1
artifacts :
when : on_failure
paths :
- ${IDF_PATH}/*.out
expire_in : 1 week
script :
2021-05-26 08:44:20 +00:00
- ${IDF_PATH}/tools/ci/test_autocomplete.py
2021-02-02 12:20:09 +00:00
test_detect_python :
extends : .host_test_template
image : $CI_DOCKER_REGISTRY/linux-shells:1
script :
- cd ${IDF_PATH}
- shellcheck -s sh tools/detect_python.sh
- shellcheck -s bash tools/detect_python.sh
- shellcheck -s dash tools/detect_python.sh
- "bash -c '. tools/detect_python.sh && echo Our Python: ${ESP_PYTHON?Python is not set}'"
- "dash -c '. tools/detect_python.sh && echo Our Python: ${ESP_PYTHON?Python is not set}'"
- "zsh -c '. tools/detect_python.sh && echo Our Python: ${ESP_PYTHON?Python is not set}'"
- "fish -c 'source tools/detect_python.fish && echo Our Python: $ESP_PYTHON'"
2021-03-08 07:07:44 +00:00
test_nvs_page :
extends : .host_test_template
script :
- cd ${IDF_PATH}/components/nvs_flash/host_test/nvs_page_test
- idf.py build
- build/host_nvs_page_test.elf
2021-05-13 09:04:31 +00:00
test_log :
extends : .host_test_template
script :
- cd ${IDF_PATH}/components/log/host_test/log_test
- idf.py build
- build/test_log_host.elf