diff --git a/components/esp_event/host_test/.build-test-rules.yml b/components/esp_event/host_test/.build-test-rules.yml new file mode 100644 index 0000000000..c4369d5869 --- /dev/null +++ b/components/esp_event/host_test/.build-test-rules.yml @@ -0,0 +1,3 @@ +components/esp_event/host_test: + enable: + - if: IDF_TARGET == "linux" diff --git a/components/esp_event/host_test/esp_event_unit_test/main/CMakeLists.txt b/components/esp_event/host_test/esp_event_unit_test/main/CMakeLists.txt index e118569643..0ee0e7d59c 100644 --- a/components/esp_event/host_test/esp_event_unit_test/main/CMakeLists.txt +++ b/components/esp_event/host_test/esp_event_unit_test/main/CMakeLists.txt @@ -1,3 +1,8 @@ idf_component_register(SRCS "esp_event_test.cpp" - INCLUDE_DIRS "../../" $ENV{IDF_PATH}/tools/catch - REQUIRES esp_event cmock) + INCLUDE_DIRS "../../" + REQUIRES esp_event cmock + WHOLE_ARCHIVE) + +# Currently 'main' for IDF_TARGET=linux is defined in freertos component. +# Since we are using a freertos mock here, need to let Catch2 provide 'main'. +target_link_libraries(${COMPONENT_LIB} PRIVATE Catch2WithMain) diff --git a/components/esp_event/host_test/esp_event_unit_test/main/esp_event_test.cpp b/components/esp_event/host_test/esp_event_unit_test/main/esp_event_test.cpp index 16c2c590c5..524a3e5e46 100644 --- a/components/esp_event/host_test/esp_event_unit_test/main/esp_event_test.cpp +++ b/components/esp_event/host_test/esp_event_unit_test/main/esp_event_test.cpp @@ -7,12 +7,11 @@ CONDITIONS OF ANY KIND, either express or implied. */ -#define CATCH_CONFIG_MAIN #include #include "esp_event.h" -#include "catch.hpp" +#include #include "fixtures.hpp" diff --git a/components/esp_event/host_test/esp_event_unit_test/main/idf_component.yml b/components/esp_event/host_test/esp_event_unit_test/main/idf_component.yml new file mode 100644 index 0000000000..f7982136b9 --- /dev/null +++ b/components/esp_event/host_test/esp_event_unit_test/main/idf_component.yml @@ -0,0 +1,2 @@ +dependencies: + espressif/catch2: "^3.4.0" diff --git a/components/esp_event/host_test/fixtures.hpp b/components/esp_event/host_test/fixtures.hpp index 0ae8ef4780..24c4bfbe04 100644 --- a/components/esp_event/host_test/fixtures.hpp +++ b/components/esp_event/host_test/fixtures.hpp @@ -9,11 +9,12 @@ #include "esp_event.h" -#include "catch.hpp" +#include extern "C" { #include "Mocktask.h" #include "Mockqueue.h" +#include "Mockidf_additions.h" } /** @@ -129,11 +130,11 @@ struct MockTask : public CMockFix { xTaskCreatePinnedToCore_ExpectAnyArgsAndReturn(pdFALSE); } else if (flags == CreateAnd::IGNORE) { xTaskCreatePinnedToCore_IgnoreAndReturn(pdTRUE); - xTaskCreatePinnedToCore_ReturnThruPtr_pvCreatedTask(&task); + xTaskCreatePinnedToCore_ReturnThruPtr_pxCreatedTask(&task); vTaskDelete_Ignore(); } else { xTaskCreatePinnedToCore_ExpectAnyArgsAndReturn(pdTRUE); - xTaskCreatePinnedToCore_ReturnThruPtr_pvCreatedTask(&task); + xTaskCreatePinnedToCore_ReturnThruPtr_pxCreatedTask(&task); vTaskDelete_Expect(task); } }