diff --git a/iceoryx_hoofs/include/iceoryx_hoofs/posix_wrapper/unnamed_semaphore.hpp b/iceoryx_hoofs/include/iceoryx_hoofs/posix_wrapper/unnamed_semaphore.hpp index 8c690291b01..3300dd3507c 100644 --- a/iceoryx_hoofs/include/iceoryx_hoofs/posix_wrapper/unnamed_semaphore.hpp +++ b/iceoryx_hoofs/include/iceoryx_hoofs/posix_wrapper/unnamed_semaphore.hpp @@ -34,11 +34,11 @@ class UnnamedSemaphore final : public internal::SemaphoreInterface; friend class SemaphoreInterface; - private: UnnamedSemaphore() noexcept = default; iox_sem_t* getHandle() noexcept; diff --git a/iceoryx_hoofs/test/moduletests/test_posix_unnamed_semaphore.cpp b/iceoryx_hoofs/test/moduletests/test_posix_unnamed_semaphore.cpp index df844388815..9fb01b2de49 100644 --- a/iceoryx_hoofs/test/moduletests/test_posix_unnamed_semaphore.cpp +++ b/iceoryx_hoofs/test/moduletests/test_posix_unnamed_semaphore.cpp @@ -38,8 +38,19 @@ class UnnamedSemaphoreTest : public Test optional sut; }; -TEST_F(UnnamedSemaphoreTest, asd) +TEST_F(UnnamedSemaphoreTest, DefaultInitialValueIsZero) { + ASSERT_FALSE(UnnamedSemaphoreBuilder().create(sut).has_error()); + EXPECT_THAT(0U, sut->getState().expect("Failed to access semaphore").value); +} + +TEST_F(UnnamedSemaphoreTest, InitialValueIsSetOnCreation) +{ + for (uint32_t initialValue = 313; initialValue < 10000; initialValue *= 3) + { + ASSERT_FALSE(UnnamedSemaphoreBuilder().initialValue(initialValue).create(sut).has_error()); + EXPECT_THAT(initialValue, sut->getState().expect("Failed to access semaphore").value); + } } } // namespace