diff --git a/test/Makefile.am b/test/Makefile.am
index c67e07a..1c4a5a1 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -7,7 +7,7 @@
 check_PROGRAMS =
 TESTS = $(check_PROGRAMS)
 
-check_PROGRAMS += placeholder
-placeholder_SOURCES = placeholder.cpp
-placeholder_CPPFLAGS = $(gtest_cppflags)
-placeholder_LDADD = $(gtest_ldadd)
+check_PROGRAMS += signal
+signal_SOURCES = signal.cpp
+signal_CPPFLAGS = $(gtest_cppflags)
+signal_LDADD = $(gtest_ldadd)
diff --git a/test/placeholder.cpp b/test/placeholder.cpp
deleted file mode 100644
index 782277f..0000000
--- a/test/placeholder.cpp
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <gtest/gtest.h>
-
-TEST(PlaceholderTest, None)
-{
-}
diff --git a/test/signal.cpp b/test/signal.cpp
new file mode 100644
index 0000000..6389cd8
--- /dev/null
+++ b/test/signal.cpp
@@ -0,0 +1,62 @@
+#include <cstring>
+#include <gtest/gtest.h>
+#include <signal.h>
+#include <stdplus/signal.hpp>
+
+namespace stdplus
+{
+namespace signal
+{
+namespace
+{
+
+TEST(SignalTest, BlockSignal)
+{
+    constexpr int s = SIGINT;
+    constexpr int otherS = SIGTERM;
+    constexpr int notBlocked = SIGPROF;
+
+    sigset_t expectedSet;
+    EXPECT_EQ(0, sigprocmask(SIG_BLOCK, nullptr, &expectedSet));
+    EXPECT_EQ(0, sigaddset(&expectedSet, otherS));
+    EXPECT_EQ(0, sigprocmask(SIG_BLOCK, &expectedSet, nullptr));
+    EXPECT_EQ(0, sigismember(&expectedSet, notBlocked));
+    EXPECT_EQ(0, sigismember(&expectedSet, s));
+    EXPECT_EQ(0, sigaddset(&expectedSet, s));
+
+    block(s);
+
+    sigset_t newSet;
+    EXPECT_EQ(0, sigprocmask(SIG_BLOCK, nullptr, &newSet));
+    EXPECT_EQ(sigismember(&expectedSet, s), sigismember(&newSet, s));
+    EXPECT_EQ(sigismember(&expectedSet, otherS), sigismember(&newSet, otherS));
+    EXPECT_EQ(sigismember(&expectedSet, notBlocked),
+              sigismember(&newSet, notBlocked));
+}
+
+TEST(SignalTest, KeepBlockSignal)
+{
+    constexpr int s = SIGINT;
+    constexpr int otherS = SIGTERM;
+    constexpr int notBlocked = SIGPROF;
+
+    sigset_t expectedSet;
+    EXPECT_EQ(0, sigprocmask(SIG_BLOCK, nullptr, &expectedSet));
+    EXPECT_EQ(0, sigaddset(&expectedSet, s));
+    EXPECT_EQ(0, sigaddset(&expectedSet, otherS));
+    EXPECT_EQ(0, sigismember(&expectedSet, notBlocked));
+    EXPECT_EQ(0, sigprocmask(SIG_BLOCK, &expectedSet, nullptr));
+
+    block(s);
+
+    sigset_t newSet;
+    EXPECT_EQ(0, sigprocmask(SIG_BLOCK, nullptr, &newSet));
+    EXPECT_EQ(sigismember(&expectedSet, s), sigismember(&newSet, s));
+    EXPECT_EQ(sigismember(&expectedSet, otherS), sigismember(&newSet, otherS));
+    EXPECT_EQ(sigismember(&expectedSet, notBlocked),
+              sigismember(&newSet, notBlocked));
+}
+
+} // namespace
+} // namespace signal
+} // namespace stdplus
