// Register enqueue and expect data move to Queue
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), 0);
std::this_thread::sleep_for(std::chrono::milliseconds(20));
}
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), 0);
}
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), 0);
// Register dequeue and expect data move to dequeue end buffer
std::unordered_map<int, std::promise<int>> dequeue_promise_map;
dequeue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kQueueSize), std::forward_as_tuple());
- test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
auto dequeue_future = dequeue_promise_map[kQueueSize].get_future();
+ test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
dequeue_future.wait();
EXPECT_EQ(dequeue_future.get(), kQueueSize);
}
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), 0);
// Register enqueue and expect data move to Queue
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), 0);
}
}
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), 0);
std::unordered_map<int, std::promise<int>> dequeue_promise_map;
dequeue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kHalfOfQueueSize),
std::forward_as_tuple());
- test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
auto dequeue_future = dequeue_promise_map[kHalfOfQueueSize].get_future();
+ test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
dequeue_future.wait();
EXPECT_EQ(dequeue_future.get(), kHalfOfQueueSize);
// Register enqueue and expect kQueueSize data move to Queue
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kQueueSize), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[kQueueSize].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), kQueueSize);
std::unordered_map<int, std::promise<int>> dequeue_promise_map;
dequeue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kHalfOfQueueSize),
std::forward_as_tuple());
- test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
auto dequeue_future = dequeue_promise_map[kHalfOfQueueSize].get_future();
+ test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
// Register enqueue
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kHalfOfQueueSize),
std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[kHalfOfQueueSize].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
// Dequeue end will unregister when buffer size is kHalfOfQueueSize
dequeue_future.wait();
// Set 20 ms delay for callback and register dequeue
std::unordered_map<int, std::promise<int>> dequeue_promise_map;
test_dequeue_end.setDelay(20);
- test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
auto dequeue_future = dequeue_promise_map[kHalfOfQueueSize].get_future();
+ test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
// Register enqueue
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
// Wait for enqueue buffer empty and expect queue is full
enqueue_future.wait();
// Register dequeue
std::unordered_map<int, std::promise<int>> dequeue_promise_map;
dequeue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kQueueSize), std::forward_as_tuple());
- test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
auto dequeue_future = dequeue_promise_map[kQueueSize].get_future();
+ test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
// Register enqueue
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
// Wait for all data move from enqueue end buffer to dequeue end buffer
dequeue_future.wait();
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kQueueSize), std::forward_as_tuple());
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[kQueueSize].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), kQueueSize);
// Register dequeue
std::unordered_map<int, std::promise<int>> dequeue_promise_map;
dequeue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kQueueSize), std::forward_as_tuple());
- test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
auto dequeue_future = dequeue_promise_map[kQueueSize].get_future();
+ test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
// Register enqueue
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
// Wait for all data move from enqueue end buffer to dequeue end buffer
dequeue_future.wait();
}
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), 0);
std::unordered_map<int, std::promise<int>> dequeue_promise_map;
dequeue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kHalfOfQueueSize),
std::forward_as_tuple());
- test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
auto dequeue_future = dequeue_promise_map[kHalfOfQueueSize].get_future();
+ test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
dequeue_future.wait();
EXPECT_EQ(dequeue_future.get(), kHalfOfQueueSize);
}
std::unordered_map<int, std::promise<int>> enqueue_promise_map;
enqueue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(0), std::forward_as_tuple());
- test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
auto enqueue_future = enqueue_promise_map[0].get_future();
+ test_enqueue_end.RegisterEnqueue(&enqueue_promise_map);
enqueue_future.wait();
EXPECT_EQ(enqueue_future.get(), 0);
// Register dequeue, expect kQueueSize move to dequeue end buffer
std::unordered_map<int, std::promise<int>> dequeue_promise_map;
dequeue_promise_map.emplace(std::piecewise_construct, std::forward_as_tuple(kQueueSize), std::forward_as_tuple());
- test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
auto dequeue_future = dequeue_promise_map[kQueueSize].get_future();
+ test_dequeue_end.RegisterDequeue(&dequeue_promise_map);
dequeue_future.wait();
EXPECT_EQ(dequeue_future.get(), kQueueSize);