signal: a few tests

This commit is contained in:
Michele Caini 2016-08-19 14:37:29 +02:00
parent 28f5cce665
commit a9403a0e26
2 changed files with 33 additions and 0 deletions

View File

@ -26,6 +26,7 @@ set(TARGET_CHECK check)
set(TARGET_IDLE idle)
set(TARGET_LOOP loop)
set(TARGET_PREPARE prepare)
set(TARGET_SIGNAL signal)
set(TARGET_TIMER timer)
set(TARGET_WORK work)
@ -77,6 +78,14 @@ target_include_directories(${TARGET_PREPARE} PRIVATE ${COMMON_INCLUDE_DIRS})
target_link_libraries(${TARGET_PREPARE} PRIVATE ${COMMON_LINK_LIBS})
add_test(NAME ${TARGET_PREPARE} COMMAND ${TARGET_PREPARE})
# Test TARGET_SIGNAL
set(TARGET_SIGNAL_SOURCES uvw/signal.cpp)
add_executable(${TARGET_SIGNAL} ${TARGET_SIGNAL_SOURCES})
target_include_directories(${TARGET_SIGNAL} PRIVATE ${COMMON_INCLUDE_DIRS})
target_link_libraries(${TARGET_SIGNAL} PRIVATE ${COMMON_LINK_LIBS})
add_test(NAME ${TARGET_SIGNAL} COMMAND ${TARGET_SIGNAL})
# Test TARGET_TIMER
set(TARGET_TIMER_SOURCES uvw/timer.cpp)

24
test/uvw/signal.cpp Normal file
View File

@ -0,0 +1,24 @@
#include <gtest/gtest.h>
#include <uvw.hpp>
TEST(Signal, Fake) {
auto loop = uvw::Loop::getDefault();
auto handle = loop->resource<uvw::SignalHandle>();
auto l = [](const auto &, auto &) { ASSERT_FALSE(true); };
handle->on<uvw::ErrorEvent>(l);
handle->on<uvw::CheckEvent>(l);
handle->start(42);
ASSERT_EQ(42, handle->signal());
handle->stop();
handle->close();
ASSERT_FALSE(handle->active());
ASSERT_TRUE(handle->closing());
loop->run();
}