mirror of
https://github.com/kidfromjupiter/nearby.git
synced 2026-09-16 15:36:12 -04:00
Internal change
PiperOrigin-RevId: 369753540
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
|
||||
#include <atomic>
|
||||
#include <functional>
|
||||
#include <string>
|
||||
|
||||
#include "platform/base/exception.h"
|
||||
#include "gtest/gtest.h"
|
||||
@@ -47,6 +48,24 @@ TEST(SingleThreadExecutorTest, CanExecute) {
|
||||
EXPECT_TRUE(done);
|
||||
}
|
||||
|
||||
TEST(SingleThreadExecutorTest, CanExecuteNamedTask) {
|
||||
absl::CondVar cond;
|
||||
std::atomic_bool done = false;
|
||||
SingleThreadExecutor executor;
|
||||
executor.Execute("my task", [&done, &cond]() {
|
||||
done = true;
|
||||
cond.SignalAll();
|
||||
});
|
||||
absl::Mutex mutex;
|
||||
{
|
||||
absl::MutexLock lock(&mutex);
|
||||
if (!done) {
|
||||
cond.WaitWithTimeout(&mutex, absl::Seconds(1));
|
||||
}
|
||||
}
|
||||
EXPECT_TRUE(done);
|
||||
}
|
||||
|
||||
TEST(SingleThreadExecutorTest, JobsExecuteInOrder) {
|
||||
std::vector<int> results;
|
||||
SingleThreadExecutor executor;
|
||||
|
||||
Reference in New Issue
Block a user