From 8fee0f33c081d339a143306a0c82baacdac5a74c Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Tue, 8 Mar 2016 09:29:44 -0800 Subject: [core] Fix RunLoop::run() behavior when called a second time --- test/util/run_loop.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'test/util') diff --git a/test/util/run_loop.cpp b/test/util/run_loop.cpp index b6e5acca09..565ce2c066 100644 --- a/test/util/run_loop.cpp +++ b/test/util/run_loop.cpp @@ -29,3 +29,24 @@ TEST(RunLoop, MultipleStop) { loop.run(); } + +TEST(RunLoop, MultipleRun) { + RunLoop loop(RunLoop::Type::New); + + Timer timer; + timer.start(mbgl::Duration::zero(), mbgl::Duration::zero(), [&] { + loop.stop(); + }); + + loop.run(); + + bool secondTimeout = false; + timer.start(mbgl::Duration::zero(), mbgl::Duration::zero(), [&] { + secondTimeout = true; + loop.stop(); + }); + + loop.run(); + + EXPECT_TRUE(secondTimeout); +} -- cgit v1.2.1