main.cpp 491 B

1234567891011121314151617181920212223
  1. #include <functional>
  2. #include <gtest/gtest.h>
  3. #include <entt/config/config.h>
  4. #include "../../../common/boxed_type.h"
  5. #include "../../../common/emitter.h"
  6. ENTT_API void emit(test::emitter &);
  7. TEST(Lib, Emitter) {
  8. test::emitter emitter;
  9. int value{};
  10. ASSERT_EQ(value, 0);
  11. emitter.on<test::boxed_int>([&](test::boxed_int msg, test::emitter &owner) {
  12. value = msg.value;
  13. owner.erase<test::boxed_int>();
  14. });
  15. emit(emitter);
  16. ASSERT_EQ(value, 2);
  17. }