main.cpp 474 B

123456789101112131415161718192021
  1. #include <gtest/gtest.h>
  2. #include <entt/signal/emitter.hpp>
  3. #include "types.h"
  4. extern void emit_event(int, test_emitter &);
  5. TEST(Lib, Emitter) {
  6. test_emitter emitter;
  7. int value{};
  8. emitter.once<int>([](int, test_emitter &) { FAIL(); });
  9. emitter.once<event>([&](event event, test_emitter &) {
  10. ASSERT_EQ(event.payload, 42);
  11. value = event.payload;
  12. });
  13. emit_event(42, emitter);
  14. emit_event(3, emitter);
  15. ASSERT_EQ(value, 42);
  16. }