yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::test::DungeonObjectRenderingE2ETests Class Reference

Comprehensive E2E test fixture for dungeon object rendering system. More...

Inheritance diagram for yaze::test::DungeonObjectRenderingE2ETests:
Collaboration diagram for yaze::test::DungeonObjectRenderingE2ETests:

Protected Member Functions

void SetUp () override
 
void TearDown () override
 
void RegisterAllTests ()
 
void RegisterObjectBrowserTests ()
 Test: Navigate object browser categories.
 
void RegisterObjectPlacementTests ()
 Test: Place object on canvas with mouse click.
 
void RegisterObjectSelectionTests ()
 Test: Select object by clicking on canvas.
 
void RegisterLayerManagementTests ()
 Test: Toggle layer visibility.
 
void RegisterSaveWorkflowTests ()
 Test: Save room with objects.
 
void RegisterRenderingQualityTests ()
 Test: Render all object types correctly.
 
void RegisterPerformanceTests ()
 Test: Large room with many objects performance.
 
- Protected Member Functions inherited from yaze::test::TestRomManager::BoundRomTest
void SetUp () override
 
void TearDown () override
 
Romrom ()
 
const Romrom () const
 
std::string GetBoundRomPath () const
 

Protected Attributes

ImGuiTestEngine * engine_ = nullptr
 
std::shared_ptr< Romrom_
 
std::unique_ptr< editor::DungeonEditorV2dungeon_editor_
 

Detailed Description

Comprehensive E2E test fixture for dungeon object rendering system.

Definition at line 74 of file dungeon_object_rendering_e2e_tests.cc.

Member Function Documentation

◆ SetUp()

void yaze::test::DungeonObjectRenderingE2ETests::SetUp ( )
inlineoverrideprotected

Definition at line 76 of file dungeon_object_rendering_e2e_tests.cc.

References dungeon_editor_, engine_, RegisterAllTests(), yaze::test::TestRomManager::BoundRomTest::rom(), and rom_.

Here is the call graph for this function:

◆ TearDown()

void yaze::test::DungeonObjectRenderingE2ETests::TearDown ( )
inlineoverrideprotected

Definition at line 99 of file dungeon_object_rendering_e2e_tests.cc.

References dungeon_editor_, engine_, and rom_.

◆ RegisterAllTests()

◆ RegisterObjectBrowserTests()

void yaze::test::DungeonObjectRenderingE2ETests::RegisterObjectBrowserTests ( )
protected

Test: Navigate object browser categories.

Validates:

  • Tab navigation works
  • Each category displays objects
  • Object list is scrollable

Definition at line 138 of file dungeon_object_rendering_e2e_tests.cc.

References engine_.

Referenced by RegisterAllTests().

◆ RegisterObjectPlacementTests()

void yaze::test::DungeonObjectRenderingE2ETests::RegisterObjectPlacementTests ( )
protected

Test: Place object on canvas with mouse click.

Validates:

  • Object preview follows mouse cursor
  • Click places object at correct position
  • Placed object appears in room object list
  • Canvas renders placed object
Todo:
fix this

Definition at line 268 of file dungeon_object_rendering_e2e_tests.cc.

References engine_.

Referenced by RegisterAllTests().

◆ RegisterObjectSelectionTests()

void yaze::test::DungeonObjectRenderingE2ETests::RegisterObjectSelectionTests ( )
protected

Test: Select object by clicking on canvas.

Validates:

  • Click on object selects it
  • Selection highlight appears
  • Object details update

Definition at line 410 of file dungeon_object_rendering_e2e_tests.cc.

References engine_.

Referenced by RegisterAllTests().

◆ RegisterLayerManagementTests()

void yaze::test::DungeonObjectRenderingE2ETests::RegisterLayerManagementTests ( )
protected

Test: Toggle layer visibility.

Validates:

  • Layer visibility checkboxes work
  • Hidden layers don't render
  • Layer can be shown again

Definition at line 590 of file dungeon_object_rendering_e2e_tests.cc.

References engine_.

Referenced by RegisterAllTests().

◆ RegisterSaveWorkflowTests()

void yaze::test::DungeonObjectRenderingE2ETests::RegisterSaveWorkflowTests ( )
protected

Test: Save room with objects.

Validates:

  • Objects can be saved to ROM
  • Save operation succeeds
  • No errors during save

Definition at line 739 of file dungeon_object_rendering_e2e_tests.cc.

References engine_.

Referenced by RegisterAllTests().

◆ RegisterRenderingQualityTests()

void yaze::test::DungeonObjectRenderingE2ETests::RegisterRenderingQualityTests ( )
protected

Test: Render all object types correctly.

Validates:

  • Type1 objects render
  • Type2 objects render
  • Type3 objects render
  • All render at correct positions

Definition at line 897 of file dungeon_object_rendering_e2e_tests.cc.

References engine_.

Referenced by RegisterAllTests().

◆ RegisterPerformanceTests()

void yaze::test::DungeonObjectRenderingE2ETests::RegisterPerformanceTests ( )
protected

Test: Large room with many objects performance.

Validates:

  • Rendering stays performant with 100+ objects
  • Frame time stays below threshold
  • Memory usage is reasonable

Definition at line 1053 of file dungeon_object_rendering_e2e_tests.cc.

References engine_.

Referenced by RegisterAllTests().

Member Data Documentation

◆ engine_

◆ rom_

std::shared_ptr<Rom> yaze::test::DungeonObjectRenderingE2ETests::rom_
protected

Definition at line 122 of file dungeon_object_rendering_e2e_tests.cc.

Referenced by SetUp(), and TearDown().

◆ dungeon_editor_


The documentation for this class was generated from the following file: