Enhance testing framework and UI integration for YAZE

- Added a comprehensive testing framework with support for unit, integration, and UI tests, improving overall test coverage and reliability.
- Integrated ImGui Test Engine for UI testing, allowing for real-time feedback and visualization of test results.
- Updated CMake configuration to conditionally include testing components based on build options, enhancing flexibility for developers.
- Introduced a new command in the CLI for running asset loading tests on ROMs, providing a straightforward way to validate functionality.
- Enhanced error handling and resource management during testing, ensuring stability and clarity in test execution.
- Improved user interface with a dedicated test dashboard for monitoring test progress and results, enhancing developer experience.
This commit is contained in:
scawful
2025-09-25 13:26:56 -04:00
parent 77ceb0256b
commit 41adb1b70e
21 changed files with 1406 additions and 25 deletions

View File

@@ -109,6 +109,9 @@ class EditorManager {
absl::Status OpenRomOrProject(const std::string& filename);
absl::Status OpenProject();
absl::Status SaveProject();
// Testing system
void InitializeTestSuites();
bool quit_ = false;
bool backup_rom_ = false;
@@ -131,6 +134,9 @@ class EditorManager {
bool show_homepage_ = true;
bool show_command_palette_ = false;
bool show_global_search_ = false;
// Testing interface
bool show_test_dashboard_ = false;
std::string version_ = "";
std::string settings_filename_ = "settings.ini";