#include "fixtures/D3D12TestFixture.h" #include "XCEngine/RHI/D3D12/D3D12RootSignature.h" using namespace XCEngine::RHI; TEST_F(D3D12TestFixture, RootSignature_Create_EmptyRootSignature) { D3D12_ROOT_SIGNATURE_DESC rootSigDesc = {}; rootSigDesc.NumParameters = 0; rootSigDesc.NumStaticSamplers = 0; rootSigDesc.Flags = D3D12_ROOT_SIGNATURE_FLAG_NONE; D3D12RootSignature rootSig; bool result = rootSig.Initialize(GetDevice()->GetDevice(), rootSigDesc); ASSERT_TRUE(result); } TEST_F(D3D12TestFixture, RootSignature_Create_WithCBV) { D3D12_ROOT_PARAMETER param = D3D12RootSignature::CreateCBV(0); D3D12_ROOT_SIGNATURE_DESC rootSigDesc = {}; rootSigDesc.NumParameters = 1; rootSigDesc.pParameters = ¶m; rootSigDesc.NumStaticSamplers = 0; rootSigDesc.Flags = D3D12_ROOT_SIGNATURE_FLAG_NONE; D3D12RootSignature rootSig; bool result = rootSig.Initialize(GetDevice()->GetDevice(), rootSigDesc); ASSERT_TRUE(result); ASSERT_NE(rootSig.GetRootSignature(), nullptr); }