main.cpp 508 B

123456789101112131415161718192021222324
  1. #define ENTT_API_IMPORT
  2. #include <gtest/gtest.h>
  3. #include <entt/lib/attribute.h>
  4. #include <entt/signal/emitter.hpp>
  5. #include "types.h"
  6. ENTT_API void emit(int, test_emitter &);
  7. TEST(Lib, Emitter) {
  8. test_emitter emitter;
  9. int value{};
  10. emitter.once<event>([](event, test_emitter &) {});
  11. emitter.once<message>([&](message msg, test_emitter &) {
  12. ASSERT_EQ(msg.payload, 42);
  13. value = msg.payload;
  14. });
  15. emit(42, emitter);
  16. emit(3, emitter);
  17. ASSERT_EQ(value, 42);
  18. }