diff --git a/iceoryx2-ffi/cxx/tests/src/service_event_tests.cpp b/iceoryx2-ffi/cxx/tests/src/service_event_tests.cpp index 757a313f2..f432641ce 100644 --- a/iceoryx2-ffi/cxx/tests/src/service_event_tests.cpp +++ b/iceoryx2-ffi/cxx/tests/src/service_event_tests.cpp @@ -10,6 +10,9 @@ // // SPDX-License-Identifier: Apache-2.0 OR MIT +#include + +#include "iox2/log.hpp" #include "iox2/node.hpp" #include "iox2/node_name.hpp" #include "iox2/service.hpp" @@ -24,8 +27,7 @@ constexpr iox::units::Duration TIMEOUT = iox::units::Duration::fromMilliseconds( template struct ServiceEventTest : public ::testing::Test { ServiceEventTest() - : service_name_value { "We all love the hypnotoad!" } - , service_name { ServiceName::create(service_name_value).expect("") } + : service_name { iox2_testing::generate_service_name() } , node { NodeBuilder().create().expect("") } , service { node.service_builder(service_name).event().create().expect("") } , notifier { service.notifier_builder().create().expect("") } @@ -37,7 +39,6 @@ struct ServiceEventTest : public ::testing::Test { static std::atomic event_id_counter; static constexpr ServiceType TYPE = T::TYPE; //NOLINTBEGIN(misc-non-private-member-variables-in-classes), required for tests - const char* service_name_value { nullptr }; ServiceName service_name; Node node; PortFactoryEvent service; @@ -56,8 +57,7 @@ TYPED_TEST_SUITE(ServiceEventTest, iox2_testing::ServiceTypes); TYPED_TEST(ServiceEventTest, created_service_does_exist) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "First time we met, I saw the ocean, it was wet!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); ASSERT_FALSE( Service::does_exist(service_name, Config::global_config(), MessagingPattern::Event).expect("")); @@ -78,8 +78,7 @@ TYPED_TEST(ServiceEventTest, created_service_does_exist) { TYPED_TEST(ServiceEventTest, creating_existing_service_fails) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "First time we met, I saw the ocean, it was wet!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut = node.service_builder(service_name).event().create().expect(""); @@ -94,8 +93,7 @@ TYPED_TEST(ServiceEventTest, service_settings_are_applied) { constexpr uint64_t NUMBER_OF_NOTIFIERS = 5; constexpr uint64_t NUMBER_OF_LISTENERS = 7; - const auto* name_value = "First time we met, I saw the ocean, it was wet!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut = node.service_builder(service_name) @@ -115,8 +113,7 @@ TYPED_TEST(ServiceEventTest, open_fails_with_incompatible_max_notifiers_requirem constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; constexpr uint64_t NUMBER_OF_NOTIFIERS = 5; - const auto* name_value = "First time we met, I saw the ocean, it was wet!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut = node.service_builder(service_name).event().max_notifiers(NUMBER_OF_NOTIFIERS).create().expect(""); @@ -130,8 +127,7 @@ TYPED_TEST(ServiceEventTest, open_fails_with_incompatible_max_listeners_requirem constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; constexpr uint64_t NUMBER_OF_LISTENERS = 7; - const auto* name_value = "First time we met, I saw the ocean, it was wet!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut = node.service_builder(service_name).event().max_listeners(NUMBER_OF_LISTENERS).create().expect(""); @@ -142,10 +138,10 @@ TYPED_TEST(ServiceEventTest, open_fails_with_incompatible_max_listeners_requirem } TYPED_TEST(ServiceEventTest, open_or_create_service_does_exist) { + iox2::set_log_level(LogLevel::TRACE); constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "First time we met, I saw the ocean, it was wet!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); ASSERT_FALSE( Service::does_exist(service_name, Config::global_config(), MessagingPattern::Event).expect("")); @@ -180,8 +176,7 @@ TYPED_TEST(ServiceEventTest, open_or_create_service_does_exist) { TYPED_TEST(ServiceEventTest, opening_non_existing_service_fails) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "First time we met, I saw the ocean, it was wet!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut = node.service_builder(service_name).event().open(); @@ -192,8 +187,7 @@ TYPED_TEST(ServiceEventTest, opening_non_existing_service_fails) { TYPED_TEST(ServiceEventTest, opening_existing_service_works) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "First time we met, I saw the ocean, it was wet!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut_create = node.service_builder(service_name).event().create(); @@ -204,8 +198,7 @@ TYPED_TEST(ServiceEventTest, opening_existing_service_works) { TYPED_TEST(ServiceEventTest, service_name_is_set) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "Another one bites the toad."; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut = node.service_builder(service_name).event().create().expect(""); diff --git a/iceoryx2-ffi/cxx/tests/src/service_publish_subscribe_tests.cpp b/iceoryx2-ffi/cxx/tests/src/service_publish_subscribe_tests.cpp index 4f6bcabbb..d9bb1c071 100644 --- a/iceoryx2-ffi/cxx/tests/src/service_publish_subscribe_tests.cpp +++ b/iceoryx2-ffi/cxx/tests/src/service_publish_subscribe_tests.cpp @@ -36,8 +36,7 @@ TYPED_TEST_SUITE(ServicePublishSubscribeTest, iox2_testing::ServiceTypes); TYPED_TEST(ServicePublishSubscribeTest, created_service_does_exist) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); ASSERT_FALSE( Service::does_exist(service_name, Config::global_config(), MessagingPattern::PublishSubscribe) @@ -60,8 +59,7 @@ TYPED_TEST(ServicePublishSubscribeTest, created_service_does_exist) { TYPED_TEST(ServicePublishSubscribeTest, creating_existing_service_fails) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); ASSERT_FALSE( Service::does_exist(service_name, Config::global_config(), MessagingPattern::PublishSubscribe) @@ -78,8 +76,7 @@ TYPED_TEST(ServicePublishSubscribeTest, creating_existing_service_fails) { TYPED_TEST(ServicePublishSubscribeTest, open_or_create_service_does_exist) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); ASSERT_FALSE( Service::does_exist(service_name, Config::global_config(), MessagingPattern::PublishSubscribe) @@ -119,8 +116,7 @@ TYPED_TEST(ServicePublishSubscribeTest, open_or_create_service_does_exist) { TYPED_TEST(ServicePublishSubscribeTest, opening_non_existing_service_fails) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut = node.service_builder(service_name).template publish_subscribe().open(); @@ -131,8 +127,7 @@ TYPED_TEST(ServicePublishSubscribeTest, opening_non_existing_service_fails) { TYPED_TEST(ServicePublishSubscribeTest, opening_existing_service_works) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut_create = node.service_builder(service_name).template publish_subscribe().create(); @@ -143,8 +138,7 @@ TYPED_TEST(ServicePublishSubscribeTest, opening_existing_service_works) { TYPED_TEST(ServicePublishSubscribeTest, opening_existing_service_with_wrong_payload_type_fails) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut_create = node.service_builder(service_name).template publish_subscribe().create(); @@ -156,8 +150,7 @@ TYPED_TEST(ServicePublishSubscribeTest, opening_existing_service_with_wrong_payl TYPED_TEST(ServicePublishSubscribeTest, open_or_create_existing_service_with_wrong_payload_type_fails) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto sut_create = node.service_builder(service_name).template publish_subscribe().create(); @@ -169,8 +162,7 @@ TYPED_TEST(ServicePublishSubscribeTest, open_or_create_existing_service_with_wro TYPED_TEST(ServicePublishSubscribeTest, send_copy_receive_works) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service = node.service_builder(service_name).template publish_subscribe().create().expect(""); @@ -189,8 +181,7 @@ TYPED_TEST(ServicePublishSubscribeTest, send_copy_receive_works) { TYPED_TEST(ServicePublishSubscribeTest, loan_uninit_send_receive_works) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service = node.service_builder(service_name).template publish_subscribe().create().expect(""); @@ -211,8 +202,7 @@ TYPED_TEST(ServicePublishSubscribeTest, loan_uninit_send_receive_works) { TYPED_TEST(ServicePublishSubscribeTest, loan_send_receive_works) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service = node.service_builder(service_name).template publish_subscribe().create().expect(""); @@ -233,8 +223,7 @@ TYPED_TEST(ServicePublishSubscribeTest, loan_send_receive_works) { TYPED_TEST(ServicePublishSubscribeTest, update_connections_delivers_history) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "Whoop here it is - the publishers historyyyy!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service = node.service_builder(service_name).template publish_subscribe().create().expect(""); @@ -264,8 +253,7 @@ TYPED_TEST(ServicePublishSubscribeTest, setting_service_properties_works) { constexpr uint64_t SUBSCRIBER_MAX_BUFFER_SIZE = 14; constexpr uint64_t SUBSCRIBER_MAX_BORROWED_SAMPLES = 15; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service = node.service_builder(service_name) @@ -295,8 +283,7 @@ TYPED_TEST(ServicePublishSubscribeTest, setting_service_properties_works) { TYPED_TEST(ServicePublishSubscribeTest, safe_overflow_can_be_set) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); @@ -317,8 +304,7 @@ TYPED_TEST(ServicePublishSubscribeTest, open_fails_with_incompatible_publisher_r constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; constexpr uint64_t NUMBER_OF_PUBLISHERS = 11; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service = node.service_builder(service_name) @@ -340,8 +326,7 @@ TYPED_TEST(ServicePublishSubscribeTest, open_fails_with_incompatible_subscriber_ constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; constexpr uint64_t NUMBER_OF_SUBSCRIBERS = 12; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service = node.service_builder(service_name) @@ -362,8 +347,7 @@ TYPED_TEST(ServicePublishSubscribeTest, open_fails_with_incompatible_subscriber_ TYPED_TEST(ServicePublishSubscribeTest, publisher_applies_unable_to_deliver_strategy) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service = node.service_builder(service_name).template publish_subscribe().create().expect(""); @@ -382,8 +366,7 @@ TYPED_TEST(ServicePublishSubscribeTest, publisher_applies_unable_to_deliver_stra TYPED_TEST(ServicePublishSubscribeTest, send_receive_with_user_header_works) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service_pub = node.service_builder(service_name) @@ -420,8 +403,7 @@ TYPED_TEST(ServicePublishSubscribeTest, send_receive_with_user_header_works) { TYPED_TEST(ServicePublishSubscribeTest, has_sample_works) { constexpr ServiceType SERVICE_TYPE = TestFixture::TYPE; - const auto* name_value = "I am floating through the galaxy of my brain. Oh the colors!"; - const auto service_name = ServiceName::create(name_value).expect(""); + const auto service_name = iox2_testing::generate_service_name(); auto node = NodeBuilder().create().expect(""); auto service = node.service_builder(service_name).template publish_subscribe().create().expect(""); @@ -437,6 +419,4 @@ TYPED_TEST(ServicePublishSubscribeTest, has_sample_works) { auto sample = sut_subscriber.receive().expect(""); ASSERT_FALSE(*sut_subscriber.has_samples()); } - - } // namespace diff --git a/iceoryx2-ffi/cxx/tests/src/test.hpp b/iceoryx2-ffi/cxx/tests/src/test.hpp index 396a33c7a..5771d9144 100644 --- a/iceoryx2-ffi/cxx/tests/src/test.hpp +++ b/iceoryx2-ffi/cxx/tests/src/test.hpp @@ -16,6 +16,7 @@ #include #include +#include "iox2/service_name.hpp" #include "iox2/service_type.hpp" using namespace ::testing; @@ -31,6 +32,15 @@ using ServiceTypeLocal = TypeServiceType; using ServiceTypes = ::testing::Types; +inline auto generate_service_name() -> ServiceName { + static std::atomic COUNTER = 0; + uint64_t now = std::chrono::system_clock::now().time_since_epoch().count(); + int random_number = rand(); // NOLINT(cert-msc30-c,cert-msc50-cpp) + return ServiceName::create((std::string("service_event_tests_") + std::to_string(COUNTER.fetch_add(1)) + "_" + + std::to_string(now) + "_" + std::to_string(random_number)) + .c_str()) + .expect(""); +} } // namespace iox2_testing #endif // IOX2_CXX_TESTS_TEST_HPP diff --git a/iceoryx2-ffi/cxx/tests/src/unique_port_id_tests.cpp b/iceoryx2-ffi/cxx/tests/src/unique_port_id_tests.cpp index 966cb53d1..939e4ec34 100644 --- a/iceoryx2-ffi/cxx/tests/src/unique_port_id_tests.cpp +++ b/iceoryx2-ffi/cxx/tests/src/unique_port_id_tests.cpp @@ -25,19 +25,13 @@ namespace { using namespace iox2; -auto generate_name() -> ServiceName { - static std::atomic COUNTER = 0; - return ServiceName::create((std::string("unique_port_id_tests_") + std::to_string(COUNTER.fetch_add(1))).c_str()) - .expect(""); -} - template struct UniquePortIdTest : public ::testing::Test { static constexpr ServiceType TYPE = T::TYPE; UniquePortIdTest() : node { NodeBuilder().create().expect("") } - , service_name { generate_name() } + , service_name { iox2_testing::generate_service_name() } , event { node.service_builder(service_name).event().create().expect("") } , pubsub { node.service_builder(service_name).template publish_subscribe().create().expect("") } , listener_1 { event.listener_builder().create().expect("") }