Add unit test for timeout=0
[folly.git] / folly / io / async / test / AsyncTimeoutTest.cpp
index 629d67864117f5e733fa584cdbb977b0fca312cb..1d7c04fe874b3fa60d6315336ca760c7429315bb 100644 (file)
@@ -53,6 +53,20 @@ TEST(AsyncTimeout, schedule) {
   EXPECT_EQ(expected, value);
 }
 
+TEST(AsyncTimeout, schedule_immediate) {
+  int value = 0;
+  int const expected = 10;
+  EventBase manager;
+
+  auto observer = AsyncTimeout::schedule(
+      std::chrono::milliseconds(0), manager, [&]() noexcept {
+        value = expected;
+      });
+
+  manager.loop();
+  EXPECT_EQ(expected, value);
+}
+
 TEST(AsyncTimeout, cancel_make) {
   int value = 0;
   int const expected = 10;