#include "RHITestFixture.h" #include #include namespace XCEngine { namespace RHI { RHIType RHITestFixture::mBackendType = RHIType::D3D12; void RHITestFixture::SetUpTestSuite() { } void RHITestFixture::TearDownTestSuite() { } void RHITestFixture::SetUp() { const char* backend = std::getenv("RHI_BACKEND"); if (backend != nullptr) { std::string backendStr(backend); if (backendStr == "OpenGL" || backendStr == "opengl") { mBackendType = RHIType::OpenGL; } else if (backendStr == "D3D12" || backendStr == "d3d12") { mBackendType = RHIType::D3D12; } } mDevice = RHIFactory::CreateRHIDevice(mBackendType); ASSERT_NE(mDevice, nullptr); RHIDeviceDesc desc = {}; desc.enableDebugLayer = true; desc.appName = L"RHIUnitTest"; bool initResult = mDevice->Initialize(desc); ASSERT_TRUE(initResult); } void RHITestFixture::TearDown() { if (mDevice != nullptr) { mDevice->Shutdown(); delete mDevice; mDevice = nullptr; } } } // namespace RHI } // namespace XCEngine