#include "fixtures/D3D12TestFixture.h" TEST_F(D3D12TestFixture, CommandAllocator_Reset_Basic) { ComPtr allocator; HRESULT hr = GetDevice()->CreateCommandAllocator( D3D12_COMMAND_LIST_TYPE_DIRECT, IID_PPV_ARGS(&allocator) ); ASSERT_HRESULT_SUCCEEDED(hr); hr = allocator->Reset(); ASSERT_HRESULT_SUCCEEDED(hr); } TEST_F(D3D12TestFixture, CommandAllocator_Reset_Multiple) { ComPtr allocator; HRESULT hr = GetDevice()->CreateCommandAllocator( D3D12_COMMAND_LIST_TYPE_DIRECT, IID_PPV_ARGS(&allocator) ); ASSERT_HRESULT_SUCCEEDED(hr); for (int i = 0; i < 10; ++i) { hr = allocator->Reset(); ASSERT_HRESULT_SUCCEEDED(hr); } } TEST_F(D3D12TestFixture, CommandAllocator_Create_DifferentTypes) { D3D12_COMMAND_LIST_TYPE types[] = { D3D12_COMMAND_LIST_TYPE_DIRECT, D3D12_COMMAND_LIST_TYPE_COMPUTE, D3D12_COMMAND_LIST_TYPE_COPY }; for (auto type : types) { ComPtr allocator; HRESULT hr = GetDevice()->CreateCommandAllocator(type, IID_PPV_ARGS(&allocator)); ASSERT_HRESULT_SUCCEEDED(hr); } }