// // Created by fomenko on 24.09.2019. // #include "gtest/gtest.h" #include "executor.h" #include "pimutex.h" const int WAIT_THREAD_TIME_MS = 30; TEST(ExcutorIntegrationTest, execute_is_runnable_invoke) { PIMutex m; int invokedRunnables = 0; PIThreadPoolExecutor executorService(1); executorService.execute([&]() { m.lock(); invokedRunnables++; m.unlock(); }); piMSleep(WAIT_THREAD_TIME_MS); ASSERT_EQ(invokedRunnables, 1); } TEST(ExcutorIntegrationTest, execute_is_not_execute_after_shutdown) { bool isRunnableInvoke = false; PIThreadPoolExecutor executorService(1); executorService.shutdown(); executorService.execute([&]() { isRunnableInvoke = true; }); piMSleep(WAIT_THREAD_TIME_MS); ASSERT_FALSE(isRunnableInvoke); }