#include #include #include #include "../../../common/emitter.h" #include "../../../common/value_type.h" #include "lib.h" TEST(Emitter, Shared) { test::emitter emitter; int value{}; ASSERT_EQ(value, 0); emitter.on([&](test::boxed_int msg, test::emitter &owner) { value = msg.value; owner.erase(); }); emit(emitter); ASSERT_EQ(value, 2); }