From 906a47b1616eebe1b9f73f0b5a849c5d946e8137 Mon Sep 17 00:00:00 2001 From: Carbenium Date: Sat, 25 Jul 2020 18:24:01 +0200 Subject: tests/EventMap: Add tests for Repeat (cherry picked from commit e6f36f83b8af4d973a96f01c6095b075dd12f5d5) --- tests/common/test-EventMap.cpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'tests/common/test-EventMap.cpp') diff --git a/tests/common/test-EventMap.cpp b/tests/common/test-EventMap.cpp index 21d5591872f..31b27af5daa 100644 --- a/tests/common/test-EventMap.cpp +++ b/tests/common/test-EventMap.cpp @@ -174,6 +174,41 @@ TEST_CASE("Reschedule a non-scheduled event", "[EventMap]") REQUIRE(id == EVENT_1); } +TEST_CASE("Repeat an event (empty map)", "[EventMap]") +{ + EventMap eventMap; + + eventMap.Repeat(1s); + eventMap.Update(1s); + + uint32 id = eventMap.ExecuteEvent(); + REQUIRE(id == 0); +} + +TEST_CASE("Repeat an event (populated map)", "[EventMap]") +{ + EventMap eventMap; + eventMap.ScheduleEvent(EVENT_1, 1s); + + SECTION("Scheduled event with delay not reached") + { + eventMap.Update(500ms); + eventMap.Repeat(1s); + + uint32 id = eventMap.ExecuteEvent(); + REQUIRE(id == 0); + } + + SECTION("Scheduled event with delay not reached") + { + eventMap.Update(1s); + eventMap.Repeat(1s); + + uint32 id = eventMap.ExecuteEvent(); + REQUIRE(id == EVENT_1); + } +} + TEST_CASE("Schedule event with phase", "[EventMap]") { EventMap eventMap; -- cgit v1.2.3