Commit 9444c23d authored by tqcq's avatar tqcq
Browse files

feat add thread_pool test case

parent a711d6bf
Loading
Loading
Loading
Loading
+37 −15
Original line number Diff line number Diff line
#include <random>
#include <sled/synchronization/event.h>
#include <sled/system/thread_pool.h>

std::random_device rd;
@@ -37,7 +38,9 @@ multiply_return(const int a, const int b)
    return res;
}

TEST_CASE("ThreadPool")
TEST_SUITE("ThreadPool")
{
    TEST_CASE("submit")
    {
        sled::ThreadPool *tp = new sled::ThreadPool();
        REQUIRE_NE(tp, nullptr);
@@ -60,3 +63,22 @@ TEST_CASE("ThreadPool")

        delete tp;
    }
    TEST_CASE("PostTask")
    {
        sled::ThreadPool *tp = new sled::ThreadPool();
        sled::Event waiter;
        tp->PostTask([&]() { waiter.Set(); });
        CHECK(waiter.Wait(sled::TimeDelta::Seconds(1)));
        delete tp;
    }

    TEST_CASE("PostDelayedTask")
    {
        sled::ThreadPool *tp = new sled::ThreadPool();
        sled::Event waiter;
        tp->PostDelayedTask([&]() { waiter.Set(); }, sled::TimeDelta::Millis(100));
        CHECK_FALSE(waiter.Wait(sled::TimeDelta::Millis(50)));
        CHECK(waiter.Wait(sled::TimeDelta::Millis(150)));
        delete tp;
    }
}
+1 −1

File changed.

Contains only whitespace changes.