OpenGL: Restructure tests similar to D3D12 layout

- Move old test files to new unit/integration structure
- Add OpenGL Test Fixture
- Update CMakeLists.txt for new layout
- Add OpenGL_Test_Restructuring_Plan.md
This commit is contained in:
2026-03-20 17:37:09 +08:00
parent 3cd3b04c7e
commit 0a19fdfb0f
19 changed files with 843 additions and 103 deletions

View File

@@ -0,0 +1,61 @@
#include "fixtures/OpenGLTestFixture.h"
#include "XCEngine/RHI/OpenGL/OpenGLFence.h"
using namespace XCEngine::RHI;
TEST_F(OpenGLTestFixture, Fence_Initialize_Unsignaled) {
OpenGLFence fence;
bool result = fence.Initialize(false);
ASSERT_TRUE(result);
EXPECT_EQ(fence.GetStatus(), FenceStatus::Unsignaled);
fence.Shutdown();
}
TEST_F(OpenGLTestFixture, Fence_Initialize_Signaled) {
OpenGLFence fence;
bool result = fence.Initialize(true);
ASSERT_TRUE(result);
fence.Shutdown();
}
TEST_F(OpenGLTestFixture, Fence_Signal_Wait) {
OpenGLFence fence;
fence.Initialize(false);
fence.Signal(1);
fence.Wait(1);
EXPECT_TRUE(fence.IsSignaled());
EXPECT_EQ(fence.GetCompletedValue(), 1u);
fence.Shutdown();
}
TEST_F(OpenGLTestFixture, Fence_IsSignaled_ReturnsState) {
OpenGLFence fence;
fence.Initialize(false);
fence.Signal(1);
fence.Wait(1);
EXPECT_TRUE(fence.IsSignaled());
fence.Shutdown();
}
TEST_F(OpenGLTestFixture, Fence_GetStatus_ReturnsCorrect) {
OpenGLFence fence;
fence.Initialize(false);
FenceStatus status = fence.GetStatus();
EXPECT_TRUE(status == FenceStatus::Signaled || status == FenceStatus::Unsignaled);
fence.Shutdown();
}