- Add SwapChain tests: Initialize, Present, Resize === OpenGL Test Suite Complete === Total: 49 tests across all phases: - Phase 1: Device, Buffer, Fence (17 tests) - Phase 2: Texture, Sampler (9 tests) - Phase 3: Shader, PipelineState, VertexArray (11 tests) - Phase 4: CommandList, RTV, DSV (9 tests) - Phase 5: SwapChain (3 tests)
42 lines
1005 B
C++
42 lines
1005 B
C++
#include "fixtures/OpenGLTestFixture.h"
|
|
#include "XCEngine/RHI/OpenGL/OpenGLSwapChain.h"
|
|
|
|
using namespace XCEngine::RHI;
|
|
|
|
TEST_F(OpenGLTestFixture, SwapChain_Initialize_Window) {
|
|
OpenGLSwapChain swapChain;
|
|
GLFWwindow* window = GetWindow();
|
|
|
|
bool result = swapChain.Initialize(window, 800, 600);
|
|
|
|
ASSERT_TRUE(result);
|
|
|
|
swapChain.Shutdown();
|
|
}
|
|
|
|
TEST_F(OpenGLTestFixture, SwapChain_Present) {
|
|
OpenGLSwapChain swapChain;
|
|
GLFWwindow* window = GetWindow();
|
|
swapChain.Initialize(window, 800, 600);
|
|
|
|
swapChain.Present();
|
|
|
|
GLenum error = glGetError();
|
|
EXPECT_EQ(error, GL_NO_ERROR);
|
|
|
|
swapChain.Shutdown();
|
|
}
|
|
|
|
TEST_F(OpenGLTestFixture, SwapChain_Resize_ChangesSize) {
|
|
OpenGLSwapChain swapChain;
|
|
GLFWwindow* window = GetWindow();
|
|
swapChain.Initialize(window, 800, 600);
|
|
|
|
swapChain.Resize(1024, 768);
|
|
|
|
EXPECT_EQ(swapChain.GetWidth(), 1024);
|
|
EXPECT_EQ(swapChain.GetHeight(), 768);
|
|
|
|
swapChain.Shutdown();
|
|
}
|