tests: Show that compute pipeline state objects are not reused.

This commit is contained in:
Stefan Dösinger 2023-12-02 22:30:07 +03:00 committed by Alexandre Julliard
parent 82a3209ee2
commit 1eaf7fa37b
Notes: Alexandre Julliard 2023-12-07 22:48:26 +01:00
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/507

View File

@ -2991,9 +2991,9 @@ static void test_root_signature_limits(void)
static void test_create_compute_pipeline_state(void)
{
D3D12_COMPUTE_PIPELINE_STATE_DESC pipeline_state_desc;
ID3D12PipelineState *pipeline_state, *pipeline_state2;
D3D12_ROOT_SIGNATURE_DESC root_signature_desc;
ID3D12RootSignature *root_signature;
ID3D12PipelineState *pipeline_state;
ID3D12Device *device, *tmp_device;
ID3D10Blob *bytecode;
ULONG refcount;
@ -3036,6 +3036,13 @@ static void test_create_compute_pipeline_state(void)
&IID_ID3D12PipelineState, (void **)&pipeline_state);
ok(hr == S_OK, "Failed to create compute pipeline, hr %#x.\n", hr);
hr = ID3D12Device_CreateComputePipelineState(device, &pipeline_state_desc,
&IID_ID3D12PipelineState, (void **)&pipeline_state2);
ok(hr == S_OK, "Failed to create compute pipeline, hr %#x.\n", hr);
ok(pipeline_state != pipeline_state2, "Got the same pipeline state object.\n");
refcount = ID3D12PipelineState_Release(pipeline_state2);
ok(!refcount, "ID3D12PipelineState has %u references left.\n", (unsigned int)refcount);
refcount = get_refcount(root_signature);
ok(refcount == 1, "Got unexpected refcount %u.\n", (unsigned int)refcount);