From 54b16a23784d48f1a3b56ff0c33bdf7fdfe46355 Mon Sep 17 00:00:00 2001 From: Subodh Iyengar Date: Wed, 15 Nov 2017 17:59:20 -0800 Subject: [PATCH 1/1] Add unit test for timeout=0 Summary: Add unit test for immediate timeout since we're using it in a few places. Reviewed By: yfeldblum Differential Revision: D6327012 fbshipit-source-id: ea80763d080b06e2a43277118d3147dc8016f348 --- folly/io/async/test/AsyncTimeoutTest.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/folly/io/async/test/AsyncTimeoutTest.cpp b/folly/io/async/test/AsyncTimeoutTest.cpp index 629d6786..1d7c04fe 100644 --- a/folly/io/async/test/AsyncTimeoutTest.cpp +++ b/folly/io/async/test/AsyncTimeoutTest.cpp @@ -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; -- 2.34.1