7#include <imgui_te_ui.h>
8#include <imgui_te_context.h>
10#include "tests/ProjectCreatorTests.h"
18 EditorApplication::on_initialize(app);
20 test_engine_ = ImGuiTestEngine_CreateContext();
21 ImGuiTestEngineIO &io = ImGuiTestEngine_GetIO(test_engine_);
23 io.ConfigVerboseLevel = ImGuiTestVerboseLevel_Info;
24 io.ConfigVerboseLevelOnError = ImGuiTestVerboseLevel_Debug;
25 io.ConfigRunSpeed = ImGuiTestRunSpeed_Fast;
26 io.ConfigNoThrottle =
true;
28 ImGuiTestEngine_Start(test_engine_, ImGui::GetCurrentContext());
31 RegisterProjectHubTests(test_engine_);
32 RegisterProjectCreatorTests(test_engine_);
33 RegisterEditorStateTests(test_engine_);
36 ImGuiTestEngine_QueueTests(test_engine_, ImGuiTestGroup_Tests);
40 EditorApplication::on_render();
42#ifndef HELLFIRE_CI_BUILD
43 ImGuiTestEngine_ShowTestEngineWindows(test_engine_,
nullptr);
47 if (!tests_complete_ && test_engine_) {
48 ImGuiTestEngineIO &io = ImGuiTestEngine_GetIO(test_engine_);
49 if (!io.IsRunningTests) {
58 ImGuiTestEngine_PostSwap(test_engine_);
60 EditorApplication::on_end_frame();
64 if (!test_engine_)
return 1;
66 int tested = 0, success = 0;
67 ImGuiTestEngine_GetResult(test_engine_, tested, success);
69 return (tested > 0 && tested == success) ? 0 : 1;
76 ImGuiTestEngine_Stop(test_engine_);
78 ImGuiTestEngine_DestroyContext(test_engine_);
~UITestHarness() override
void on_initialize(Application &app) override
void on_end_frame() override
void on_render() override
int get_exit_code() const
static UITestHarness * instance
void RegisterEditorStateTests(ImGuiTestEngine *engine)