Tweaks for EventHook.
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2020-07-31 19:52:12 +02:00
parent c3de280ebb
commit fa5184ad77
3 changed files with 28 additions and 5 deletions

View File

@@ -27,4 +27,17 @@ TEST_CASE("Build and use event hook a lot", "[Battling]") {
REQUIRE(events.size() == 10000);
}
TEST_CASE("Build and use event hook with different types", "[Battling]") {
auto eventHook = EventHook();
std::vector<const EventData*> events;
eventHook.RegisterListener([&](const EventData* evt) mutable -> void { events.push_back(evt); });
eventHook.Trigger<DamageEvent>(nullptr, DamageSource::AttackDamage, 0, 0);
eventHook.Trigger<FaintEvent>(nullptr);
eventHook.Trigger<DamageEvent>(nullptr, DamageSource::AttackDamage, 0, 0);
eventHook.Trigger<FaintEvent>(nullptr);
eventHook.Trigger<DamageEvent>(nullptr, DamageSource::AttackDamage, 0, 0);
eventHook.Trigger<FaintEvent>(nullptr);
eventHook.Trigger<DamageEvent>(nullptr, DamageSource::AttackDamage, 0, 0);
eventHook.Trigger<FaintEvent>(nullptr);
}
#endif