Fix RHI swap chain queue binding and restore minimal GT checks

This commit is contained in:
2026-03-25 21:50:57 +08:00
parent 8f76564ded
commit 30b5f93157
13 changed files with 127 additions and 74 deletions

View File

@@ -11,7 +11,7 @@ TEST_P(RHITestFixture, SwapChain_Create) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
swapChain->Shutdown();
@@ -26,7 +26,7 @@ TEST_P(RHITestFixture, SwapChain_GetCurrentBackBufferIndex) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
uint32_t index = swapChain->GetCurrentBackBufferIndex();
@@ -44,7 +44,7 @@ TEST_P(RHITestFixture, SwapChain_GetCurrentBackBuffer) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
RHITexture* backBuffer = swapChain->GetCurrentBackBuffer();
@@ -62,7 +62,7 @@ TEST_P(RHITestFixture, SwapChain_Resize) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
swapChain->Resize(1024, 768);
@@ -79,7 +79,7 @@ TEST_P(RHITestFixture, SwapChain_Present_Basic) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
swapChain->Present(0, 0);
@@ -96,7 +96,7 @@ TEST_P(RHITestFixture, SwapChain_Present_WithSyncInterval) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
swapChain->Present(1, 0);
@@ -114,7 +114,7 @@ TEST_P(RHITestFixture, SwapChain_Present_Multiple) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
for (int i = 0; i < 10; ++i) {
@@ -133,7 +133,7 @@ TEST_P(RHITestFixture, SwapChain_GetNativeHandle) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
void* handle = swapChain->GetNativeHandle();
@@ -151,7 +151,7 @@ TEST_P(RHITestFixture, SwapChain_Resize_WithPresent) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
swapChain->Present(0, 0);
@@ -170,7 +170,7 @@ TEST_P(RHITestFixture, SwapChain_TripleBuffering) {
desc.bufferCount = 3;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
uint32_t index0 = swapChain->GetCurrentBackBufferIndex();
@@ -193,7 +193,7 @@ TEST_P(RHITestFixture, SwapChain_DoubleShutdown) {
desc.bufferCount = 2;
desc.format = Format::R8G8B8A8_UNorm;
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc);
RHISwapChain* swapChain = GetDevice()->CreateSwapChain(desc, GetCommandQueue());
ASSERT_NE(swapChain, nullptr);
swapChain->Shutdown();