aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarbenium <carbenium@outlook.com>2020-07-25 16:51:58 +0200
committerShauren <shauren.trinity@gmail.com>2022-01-24 00:00:47 +0100
commit5512eb2f8f09efe730ab2f997af7e7130d1e90f5 (patch)
treed657a12f03a2e9b05264283b09f867c49cc21e52
parent27c1f475987bee079bb0bb616b6028d346d3b1b6 (diff)
tests/EventMap: Test for event past it's execution time
With the switch to std::chrono return type of GetTimeUntilEvent we don't run into an overflow condition which happend with the previous uint32 return value if the events scheduled execution time is in the past. Test for this case. (cherry picked from commit e877f988d1c4e1361612f3d5c4ebe915f746aee5)
-rw-r--r--tests/common/test-EventMap.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/tests/common/test-EventMap.cpp b/tests/common/test-EventMap.cpp
index 563fd9b4873..89d3c4d2bb2 100644
--- a/tests/common/test-EventMap.cpp
+++ b/tests/common/test-EventMap.cpp
@@ -66,6 +66,13 @@ TEST_CASE("Schedule an event", "[EventMap]")
REQUIRE(eventMap.Empty());
REQUIRE(eventMap.GetTimeUntilEvent(EVENT_1) == Milliseconds::max());
}
+
+ SECTION("Event is past it's execution time")
+ {
+ eventMap.Update(2000);
+
+ REQUIRE(eventMap.GetTimeUntilEvent(EVENT_1) == -1s);
+ }
}
// TODO: The semantics of this case are not well defined.