Make timing test cases more lenient

This commit is contained in:
Sebastian Messmer 2015-11-12 15:39:52 -08:00
parent 978e7dbc46
commit 90ea7be899
1 changed files with 17 additions and 17 deletions

View File

@ -20,48 +20,48 @@ public:
};
TEST_F(CallAfterTimeoutTest, NoReset_1) {
auto obj = callAfterTimeout(milliseconds(50));
sleep_for(milliseconds(40));
auto obj = callAfterTimeout(milliseconds(100));
sleep_for(milliseconds(50));
EXPECT_FALSE(called);
sleep_for(milliseconds(20));
sleep_for(milliseconds(100));
EXPECT_TRUE(called);
}
TEST_F(CallAfterTimeoutTest, NoReset_2) {
auto obj = callAfterTimeout(milliseconds(100));
sleep_for(milliseconds(90));
auto obj = callAfterTimeout(milliseconds(200));
sleep_for(milliseconds(150));
EXPECT_FALSE(called);
sleep_for(milliseconds(20));
sleep_for(milliseconds(100));
EXPECT_TRUE(called);
}
TEST_F(CallAfterTimeoutTest, DoesntCallTwice) {
auto obj = callAfterTimeout(milliseconds(50));
sleep_for(milliseconds(60));
sleep_for(milliseconds(100));
EXPECT_TRUE(called);
called = false;
sleep_for(milliseconds(60));
sleep_for(milliseconds(100));
EXPECT_FALSE(called);
}
TEST_F(CallAfterTimeoutTest, OneReset) {
auto obj = callAfterTimeout(milliseconds(50));
sleep_for(milliseconds(40));
auto obj = callAfterTimeout(milliseconds(100));
sleep_for(milliseconds(75));
obj->resetTimer();
sleep_for(milliseconds(40));
sleep_for(milliseconds(75));
EXPECT_FALSE(called);
sleep_for(milliseconds(20));
sleep_for(milliseconds(75));
EXPECT_TRUE(called);
}
TEST_F(CallAfterTimeoutTest, TwoResets) {
auto obj = callAfterTimeout(milliseconds(50));
sleep_for(milliseconds(20));
auto obj = callAfterTimeout(milliseconds(100));
sleep_for(milliseconds(50));
obj->resetTimer();
sleep_for(milliseconds(40));
sleep_for(milliseconds(75));
obj->resetTimer();
sleep_for(milliseconds(40));
sleep_for(milliseconds(75));
EXPECT_FALSE(called);
sleep_for(milliseconds(20));
sleep_for(milliseconds(75));
EXPECT_TRUE(called);
}