#include #include #include #include #include #include #include TEST(imgui_render_task, demowindow) { MM::Engine engine; engine.addService(); ASSERT_TRUE(engine.enableService()); auto& rs = engine.addService(); ASSERT_TRUE(engine.enableService()); // needs a open window (and opengl context) which the OpenGLRenderer creates in this case engine.addService(); ASSERT_TRUE(engine.enableService()); rs.addRenderTask(engine); auto handle = engine.addUpdate([](MM::Engine&) { ImGui::ShowDemoWindow(); } ); { auto tmp_lock = handle.lock(); tmp_lock->priority = 0; tmp_lock->name = "imgui demo window"; } engine.run(); } int main(int argc, char** argv) { ::testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS(); }