Improving test coverage [adding Thread] (#181)
This commit is contained in:
parent
008361d83c
commit
1f7d4acc40
@ -96,6 +96,7 @@ ADD_UVW_TEST(resource uvw/resource.cpp)
|
|||||||
ADD_UVW_TEST(signal uvw/signal.cpp)
|
ADD_UVW_TEST(signal uvw/signal.cpp)
|
||||||
ADD_UVW_TEST(stream uvw/stream.cpp)
|
ADD_UVW_TEST(stream uvw/stream.cpp)
|
||||||
ADD_UVW_TEST(tcp uvw/tcp.cpp)
|
ADD_UVW_TEST(tcp uvw/tcp.cpp)
|
||||||
|
ADD_UVW_TEST(thread uvw/thread.cpp)
|
||||||
ADD_UVW_TEST(timer uvw/timer.cpp)
|
ADD_UVW_TEST(timer uvw/timer.cpp)
|
||||||
ADD_UVW_TEST(tty uvw/tty.cpp)
|
ADD_UVW_TEST(tty uvw/tty.cpp)
|
||||||
ADD_UVW_TEST(udp uvw/udp.cpp)
|
ADD_UVW_TEST(udp uvw/udp.cpp)
|
||||||
|
|||||||
28
test/uvw/thread.cpp
Normal file
28
test/uvw/thread.cpp
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#include <gtest/gtest.h>
|
||||||
|
#include <uvw.hpp>
|
||||||
|
|
||||||
|
TEST(Thread, Run) {
|
||||||
|
auto loop = uvw::Loop::getDefault();
|
||||||
|
auto has_run = std::make_shared<bool>();
|
||||||
|
|
||||||
|
auto handle = loop->resource<uvw::Thread>([](std::shared_ptr<void> data) {
|
||||||
|
if(auto has_run = std::static_pointer_cast<bool>(data); has_run) {
|
||||||
|
*has_run = true;
|
||||||
|
}
|
||||||
|
}, has_run);
|
||||||
|
|
||||||
|
ASSERT_TRUE(handle->run());
|
||||||
|
ASSERT_TRUE(handle->join());
|
||||||
|
ASSERT_TRUE(*has_run);
|
||||||
|
|
||||||
|
loop->run();
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(ThreadLocalStorage, SetGet) {
|
||||||
|
auto loop = uvw::Loop::getDefault();
|
||||||
|
auto localStorage = loop->resource<uvw::ThreadLocalStorage>();
|
||||||
|
auto flag{true};
|
||||||
|
|
||||||
|
localStorage->set<bool>(&flag);
|
||||||
|
ASSERT_TRUE(localStorage->get<bool>());
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user