#define CR_HOST #include #include #include #include "types.h" TEST(Lib, Emitter) { test_emitter emitter; int value{}; emitter.once([&](event ev, test_emitter &) { value = ev.payload; }); emitter.once([&](message msg, test_emitter &) { value = msg.payload; }); emitter.publish(3); ASSERT_EQ(value, 3); cr_plugin ctx; ctx.userdata = &emitter; cr_plugin_load(ctx, PLUGIN); cr_plugin_update(ctx); ASSERT_EQ(value, 42); cr_plugin_close(ctx); }