diff --git a/UNITTESTS/stubs/CMakeLists.txt b/UNITTESTS/stubs/CMakeLists.txt index 69195ef31ec..50cfb307ade 100644 --- a/UNITTESTS/stubs/CMakeLists.txt +++ b/UNITTESTS/stubs/CMakeLists.txt @@ -9,7 +9,6 @@ add_library(mbed-headers-connectivity INTERFACE) add_library(mbed-headers-storage INTERFACE) add_library(mbed-headers-hal INTERFACE) add_library(mbed-headers-events INTERFACE) -add_library(mbed-headers-rtos INTERFACE) target_link_libraries(mbed-headers INTERFACE @@ -101,12 +100,6 @@ target_include_directories(mbed-headers-hal ${mbed-os_SOURCE_DIR}/hal/include ) -target_include_directories(mbed-headers-rtos - INTERFACE - ${mbed-os_SOURCE_DIR}/rtos/include - ${mbed-os_SOURCE_DIR}/rtos/include/rtos -) - target_include_directories(mbed-headers INTERFACE ${mbed-os_SOURCE_DIR}/features @@ -123,7 +116,6 @@ add_subdirectory(connectivity) add_subdirectory(events) add_subdirectory(hal) add_subdirectory(platform) -add_subdirectory(rtos) add_subdirectory(storage) add_library(mbed-stubs INTERFACE) diff --git a/UNITTESTS/stubs/connectivity/CMakeLists.txt b/UNITTESTS/stubs/connectivity/CMakeLists.txt index faba2e38e2d..fdea4287fe1 100644 --- a/UNITTESTS/stubs/connectivity/CMakeLists.txt +++ b/UNITTESTS/stubs/connectivity/CMakeLists.txt @@ -57,7 +57,9 @@ target_sources(mbed-stubs-connectivity target_link_libraries(mbed-stubs-connectivity PRIVATE + mbed-stubs-rtos-headers mbed-headers mbed-stubs-headers + mbed-stubs-rtos gtest ) diff --git a/UNITTESTS/stubs/rtos/CMakeLists.txt b/UNITTESTS/stubs/rtos/CMakeLists.txt deleted file mode 100644 index fc9a759b8d6..00000000000 --- a/UNITTESTS/stubs/rtos/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (c) 2021 ARM Limited. All rights reserved. -# SPDX-License-Identifier: Apache-2.0 - -add_library(mbed-stubs-rtos) - -target_sources(mbed-stubs-rtos - PRIVATE - ConditionVariable_stub.cpp - Kernel_stub.cpp - mbed_rtos_rtx_stub.c - Mutex_stub.cpp - rtx_mutex_stub.c - Semaphore_stub.cpp - ThisThread_stub.cpp - Thread_stub.cpp -) - -target_link_libraries(mbed-stubs-rtos - PRIVATE - mbed-headers - mbed-stubs-headers -) diff --git a/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellularcontext/CMakeLists.txt b/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellularcontext/CMakeLists.txt index 5772d7cf458..18d9dfc5d9e 100644 --- a/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellularcontext/CMakeLists.txt +++ b/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellularcontext/CMakeLists.txt @@ -25,6 +25,7 @@ target_link_libraries(${TEST_NAME} mbed-headers mbed-stubs mbed-stubs-headers + mbed-stubs-rtos-headers gmock_main ) diff --git a/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellulardevice/CMakeLists.txt b/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellulardevice/CMakeLists.txt index bdf0e684142..8886bc8d56d 100644 --- a/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellulardevice/CMakeLists.txt +++ b/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellulardevice/CMakeLists.txt @@ -31,6 +31,7 @@ target_link_libraries(${TEST_NAME} mbed-headers mbed-stubs mbed-stubs-headers + mbed-stubs-rtos gmock_main ) diff --git a/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellularstack/CMakeLists.txt b/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellularstack/CMakeLists.txt index ca26a782c4c..0bd65fe5e3a 100644 --- a/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellularstack/CMakeLists.txt +++ b/connectivity/cellular/tests/UNITTESTS/framework/AT/at_cellularstack/CMakeLists.txt @@ -29,6 +29,7 @@ target_link_libraries(${TEST_NAME} mbed-headers mbed-stubs mbed-stubs-headers + mbed-stubs-rtos-headers gmock_main ) diff --git a/connectivity/cellular/tests/UNITTESTS/framework/device/cellularstatemachine/CMakeLists.txt b/connectivity/cellular/tests/UNITTESTS/framework/device/cellularstatemachine/CMakeLists.txt index 21953781848..4f056639884 100644 --- a/connectivity/cellular/tests/UNITTESTS/framework/device/cellularstatemachine/CMakeLists.txt +++ b/connectivity/cellular/tests/UNITTESTS/framework/device/cellularstatemachine/CMakeLists.txt @@ -30,6 +30,7 @@ target_link_libraries(${TEST_NAME} mbed-headers mbed-stubs mbed-stubs-headers + mbed-stubs-rtos-headers gmock_main ) diff --git a/rtos/CMakeLists.txt b/rtos/CMakeLists.txt index 9e2194d12d3..ab9d3082ea9 100644 --- a/rtos/CMakeLists.txt +++ b/rtos/CMakeLists.txt @@ -1,6 +1,10 @@ # Copyright (c) 2020 ARM Limited. All rights reserved. # SPDX-License-Identifier: Apache-2.0 +if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME AND BUILD_TESTING) + add_subdirectory(tests/UNITTESTS) +endif() + target_include_directories(mbed-core INTERFACE . diff --git a/rtos/tests/.mbedignore b/rtos/tests/.mbedignore new file mode 100644 index 00000000000..e28badb677d --- /dev/null +++ b/rtos/tests/.mbedignore @@ -0,0 +1 @@ +UNITTESTS/* diff --git a/rtos/tests/UNITTESTS/CMakeLists.txt b/rtos/tests/UNITTESTS/CMakeLists.txt new file mode 100644 index 00000000000..b632a73f477 --- /dev/null +++ b/rtos/tests/UNITTESTS/CMakeLists.txt @@ -0,0 +1,4 @@ +# Copyright (c) 2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_subdirectory(doubles) diff --git a/rtos/tests/UNITTESTS/doubles/CMakeLists.txt b/rtos/tests/UNITTESTS/doubles/CMakeLists.txt new file mode 100644 index 00000000000..4216a6ab6c9 --- /dev/null +++ b/rtos/tests/UNITTESTS/doubles/CMakeLists.txt @@ -0,0 +1,42 @@ +# Copyright (c) 2021 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +add_library(mbed-headers-rtos INTERFACE) + +target_include_directories(mbed-headers-rtos + INTERFACE + ${mbed-os_SOURCE_DIR}/rtos/include + ${mbed-os_SOURCE_DIR}/rtos/include/rtos +) + +add_library(mbed-stubs-rtos-headers INTERFACE) + +target_include_directories(mbed-stubs-rtos-headers + INTERFACE + . +) + +add_library(mbed-stubs-rtos) + +add_definitions(-DUNITTEST) + +target_sources(mbed-stubs-rtos + PRIVATE + ConditionVariable_stub.cpp + Kernel_stub.cpp + mbed_rtos_rtx_stub.c + Mutex_stub.cpp + rtx_mutex_stub.c + Semaphore_stub.cpp + ThisThread_stub.cpp + Thread_stub.cpp +) + +target_link_libraries(mbed-stubs-rtos + PRIVATE + mbed-headers-base + mbed-headers-rtos + mbed-headers-platform + mbed-headers-drivers + mbed-headers-hal +) diff --git a/UNITTESTS/stubs/rtos/ConditionVariable_stub.cpp b/rtos/tests/UNITTESTS/doubles/ConditionVariable_stub.cpp similarity index 100% rename from UNITTESTS/stubs/rtos/ConditionVariable_stub.cpp rename to rtos/tests/UNITTESTS/doubles/ConditionVariable_stub.cpp diff --git a/UNITTESTS/stubs/ConditionVariable_stub.h b/rtos/tests/UNITTESTS/doubles/ConditionVariable_stub.h similarity index 100% rename from UNITTESTS/stubs/ConditionVariable_stub.h rename to rtos/tests/UNITTESTS/doubles/ConditionVariable_stub.h diff --git a/UNITTESTS/stubs/rtos/Kernel_stub.cpp b/rtos/tests/UNITTESTS/doubles/Kernel_stub.cpp similarity index 100% rename from UNITTESTS/stubs/rtos/Kernel_stub.cpp rename to rtos/tests/UNITTESTS/doubles/Kernel_stub.cpp diff --git a/UNITTESTS/stubs/rtos/Mutex_stub.cpp b/rtos/tests/UNITTESTS/doubles/Mutex_stub.cpp similarity index 100% rename from UNITTESTS/stubs/rtos/Mutex_stub.cpp rename to rtos/tests/UNITTESTS/doubles/Mutex_stub.cpp diff --git a/UNITTESTS/stubs/rtos/Semaphore_stub.cpp b/rtos/tests/UNITTESTS/doubles/Semaphore_stub.cpp similarity index 100% rename from UNITTESTS/stubs/rtos/Semaphore_stub.cpp rename to rtos/tests/UNITTESTS/doubles/Semaphore_stub.cpp diff --git a/UNITTESTS/stubs/Semaphore_stub.h b/rtos/tests/UNITTESTS/doubles/Semaphore_stub.h similarity index 100% rename from UNITTESTS/stubs/Semaphore_stub.h rename to rtos/tests/UNITTESTS/doubles/Semaphore_stub.h diff --git a/UNITTESTS/stubs/rtos/ThisThread_stub.cpp b/rtos/tests/UNITTESTS/doubles/ThisThread_stub.cpp similarity index 100% rename from UNITTESTS/stubs/rtos/ThisThread_stub.cpp rename to rtos/tests/UNITTESTS/doubles/ThisThread_stub.cpp diff --git a/UNITTESTS/stubs/rtos/Thread_stub.cpp b/rtos/tests/UNITTESTS/doubles/Thread_stub.cpp similarity index 100% rename from UNITTESTS/stubs/rtos/Thread_stub.cpp rename to rtos/tests/UNITTESTS/doubles/Thread_stub.cpp diff --git a/UNITTESTS/stubs/Thread_stub.h b/rtos/tests/UNITTESTS/doubles/Thread_stub.h similarity index 100% rename from UNITTESTS/stubs/Thread_stub.h rename to rtos/tests/UNITTESTS/doubles/Thread_stub.h diff --git a/UNITTESTS/stubs/rtos/mbed_rtos_rtx_stub.c b/rtos/tests/UNITTESTS/doubles/mbed_rtos_rtx_stub.c similarity index 100% rename from UNITTESTS/stubs/rtos/mbed_rtos_rtx_stub.c rename to rtos/tests/UNITTESTS/doubles/mbed_rtos_rtx_stub.c diff --git a/UNITTESTS/stubs/rtos/rtx_mutex_stub.c b/rtos/tests/UNITTESTS/doubles/rtx_mutex_stub.c similarity index 100% rename from UNITTESTS/stubs/rtos/rtx_mutex_stub.c rename to rtos/tests/UNITTESTS/doubles/rtx_mutex_stub.c