| # Copyright 2020 The Pigweed Authors |
| # |
| # 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 |
| # |
| # https://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. |
| |
| include($ENV{PW_ROOT}/pw_build/pigweed.cmake) |
| include($ENV{PW_ROOT}/pw_protobuf_compiler/proto.cmake) |
| |
| include($ENV{PW_ROOT}/pw_unit_test/backend.cmake) |
| |
| pw_add_module_config(pw_unit_test_CONFIG) |
| |
| pw_add_library(pw_unit_test.config INTERFACE |
| HEADERS |
| public/pw_unit_test/config.h |
| PUBLIC_INCLUDES |
| public |
| PUBLIC_DEPS |
| ${pw_unit_test_CONFIG} |
| pw_polyfill |
| ) |
| |
| add_library(pw_unit_test INTERFACE) |
| target_include_directories(pw_unit_test |
| INTERFACE |
| public |
| ) |
| |
| # Temporarily redirect deprecated googletest pointer to new pointer. |
| target_link_libraries(pw_unit_test |
| INTERFACE |
| "${pw_unit_test_BACKEND}" |
| ) |
| |
| pw_add_library(pw_unit_test.light STATIC |
| HEADERS |
| light_public_overrides/pw_unit_test/framework_backend.h |
| SOURCES |
| framework_light.cc |
| PUBLIC_DEPS |
| pw_bytes.alignment |
| pw_polyfill |
| pw_preprocessor |
| pw_result |
| pw_status |
| pw_string.builder |
| pw_unit_test.config |
| pw_unit_test.event_handler |
| PRIVATE_DEPS |
| pw_assert |
| PUBLIC_INCLUDES |
| light_public_overrides |
| public |
| public_overrides |
| ) |
| |
| pw_add_library(pw_unit_test.googletest INTERFACE |
| HEADERS |
| googletest_public_overrides/pw_unit_test/framework_backend.h |
| PUBLIC_INCLUDES |
| googletest_public_overrides |
| PUBLIC_DEPS |
| pw_third_party.googletest |
| pw_result |
| pw_status |
| ) |
| |
| pw_add_library(pw_unit_test.googletest_handler_adapter STATIC |
| SOURCES |
| googletest_handler_adapter.cc |
| PUBLIC_DEPS |
| pw_unit_test.event_handler |
| pw_third_party.googletest |
| PUBLIC_INCLUDES |
| public |
| ) |
| |
| pw_add_library(pw_unit_test.fuzztest INTERFACE |
| PUBLIC_DEPS |
| pw_fuzzer.fuzztest |
| pw_unit_test.googletest |
| ) |
| |
| pw_add_test(pw_unit_test.framework_test |
| SOURCES |
| framework_test.cc |
| PRIVATE_DEPS |
| pw_assert |
| pw_status |
| GROUPS |
| pw_unit_test |
| ) |
| |
| if(${pw_unit_test_BACKEND} STREQUAL "pw_unit_test.light") |
| pw_add_test(pw_unit_test.framework_light_test |
| SOURCES |
| framework_light_test.cc |
| PRIVATE_DEPS |
| pw_string |
| GROUPS |
| pw_unit_test |
| ) |
| endif() |
| |
| pw_add_library(pw_unit_test.static_library_support STATIC |
| HEADERS |
| public/pw_unit_test/static_library_support.h |
| PUBLIC_INCLUDES |
| public |
| SOURCES |
| static_library_support.cc |
| PUBLIC_DEPS |
| pw_unit_test.light |
| ) |
| |
| pw_add_library(pw_unit_test.event_handler INTERFACE |
| HEADERS |
| public/pw_unit_test/event_handler.h |
| PUBLIC_INCLUDES |
| public |
| ) |
| |
| pw_add_library(pw_unit_test.status_macros INTERFACE |
| HEADERS |
| public/pw_unit_test/status_macros.h |
| PUBLIC_INCLUDES |
| public |
| PUBLIC_DEPS |
| pw_status |
| pw_third_party.fuchsia.stdcompat |
| ) |
| |
| pw_add_library(pw_unit_test.googletest_style_event_handler STATIC |
| HEADERS |
| public/pw_unit_test/googletest_style_event_handler.h |
| PUBLIC_INCLUDES |
| public |
| PUBLIC_DEPS |
| pw_unit_test.event_handler |
| pw_preprocessor |
| SOURCES |
| googletest_style_event_handler.cc |
| ) |
| |
| if(${pw_unit_test_BACKEND} STREQUAL "pw_unit_test.googletest") |
| pw_add_library(pw_unit_test.googletest_test_matchers INTERFACE |
| HEADERS |
| public/pw_unit_test/googletest_test_matchers.h |
| PUBLIC_INCLUDES |
| public |
| PUBLIC_DEPS |
| pw_result |
| pw_status |
| pw_third_party.googletest |
| ) |
| pw_add_test(pw_unit_test.googletest_test_matchers_test |
| SOURCES |
| googletest_test_matchers_test.cc |
| PRIVATE_DEPS |
| pw_unit_test.googletest_test_matchers |
| GROUPS |
| pw_unit_test |
| ) |
| endif() |
| |
| pw_add_library(pw_unit_test.simple_printing_main STATIC |
| SOURCES |
| simple_printing_main.cc |
| simple_printing_event_handler.cc |
| PRIVATE_DEPS |
| pw_unit_test |
| pw_unit_test.googletest_style_event_handler |
| pw_preprocessor |
| pw_string |
| pw_sys_io |
| ) |
| |
| pw_add_library(pw_unit_test.logging_event_handler STATIC |
| HEADERS |
| public/pw_unit_test/logging_event_handler.h |
| PUBLIC_INCLUDES |
| public |
| PUBLIC_DEPS |
| pw_log |
| pw_unit_test.googletest_style_event_handler |
| SOURCES |
| logging_event_handler.cc |
| ) |
| |
| pw_add_library(pw_unit_test.logging_main STATIC |
| SOURCES |
| logging_main.cc |
| PRIVATE_DEPS |
| pw_unit_test.logging_event_handler |
| pw_unit_test |
| ) |
| |
| pw_add_library(pw_unit_test.constexpr INTERFACE |
| HEADERS |
| public/pw_unit_test/constexpr.h |
| PUBLIC_INCLUDES |
| public |
| PUBLIC_DEPS |
| pw_preprocessor |
| pw_third_party.fuchsia.stdcompat |
| ) |
| |
| pw_add_test(pw_unit_test.constexpr_test |
| SOURCES |
| constexpr_test.cc |
| PRIVATE_DEPS |
| pw_compilation_testing._pigweed_only_negative_compilation |
| pw_unit_test.constexpr |
| GROUPS |
| pw_unit_test |
| ) |
| |
| pw_add_library(pw_unit_test.multi_event_handler INTERFACE |
| HEADERS |
| public/pw_unit_test/multi_event_handler.h |
| PUBLIC_INCLUDES |
| public |
| PUBLIC_DEPS |
| pw_unit_test.event_handler |
| ) |
| |
| pw_add_test(pw_unit_test.multi_event_handler_test |
| SOURCES |
| multi_event_handler_test.cc |
| PRIVATE_DEPS |
| pw_unit_test.multi_event_handler |
| GROUPS |
| pw_unit_test |
| ) |
| |
| pw_add_library(pw_unit_test.test_record_event_handler INTERFACE |
| HEADERS |
| public/pw_unit_test/internal/test_record_trie.h |
| public/pw_unit_test/test_record_event_handler.h |
| PUBLIC_INCLUDES |
| public |
| PUBLIC_DEPS |
| pw_assert |
| pw_json.builder |
| pw_unit_test.event_handler |
| ) |
| |
| pw_add_test(pw_unit_test.test_record_event_handler_test |
| SOURCES |
| test_record_event_handler_test.cc |
| PRIVATE_DEPS |
| pw_unit_test.test_record_event_handler |
| GROUPS |
| pw_unit_test |
| ) |
| |
| pw_proto_library(pw_unit_test.unit_test_proto |
| SOURCES |
| pw_unit_test_proto/unit_test.proto |
| ) |
| |
| if("${pw_unit_test_BACKEND}" STREQUAL "pw_unit_test.light") |
| pw_add_library(pw_unit_test.rpc_service STATIC |
| PUBLIC_DEPS |
| pw_unit_test.config |
| pw_unit_test.event_handler |
| pw_unit_test |
| pw_unit_test.unit_test_proto.pwpb |
| pw_unit_test.unit_test_proto.raw_rpc |
| pw_containers.vector |
| PRIVATE_DEPS |
| pw_log |
| PUBLIC_INCLUDES |
| public |
| rpc_light_public |
| HEADERS |
| public/pw_unit_test/unit_test_service.h |
| rpc_light_public/pw_unit_test/internal/rpc_event_handler.h |
| SOURCES |
| unit_test_service.cc |
| rpc_light_event_handler.cc |
| ) |
| else() |
| pw_add_library(pw_unit_test.rpc_service STATIC |
| PUBLIC_DEPS |
| pw_unit_test.config |
| pw_unit_test.event_handler |
| pw_unit_test |
| pw_unit_test.unit_test_proto.pwpb |
| pw_unit_test.unit_test_proto.raw_rpc |
| pw_containers.vector |
| PRIVATE_DEPS |
| pw_log |
| PUBLIC_INCLUDES |
| public |
| rpc_gtest_public |
| HEADERS |
| public/pw_unit_test/unit_test_service.h |
| rpc_light_public/pw_unit_test/internal/rpc_event_handler.h |
| rpc_gtest_public/pw_unit_test/internal/rpc_event_handler.h |
| SOURCES |
| unit_test_service.cc |
| rpc_gtest_event_handler.cc |
| ) |
| endif() |