Józef Kucia : d3d10core/tests: Add test for render target device mismatch.
Module: wine Branch: master Commit: 6c490d14689f0544db2b06a4d688c88c422f0864 URL: http://source.winehq.org/git/wine.git/?a=commit;h=6c490d14689f0544db2b06a4d6... Author: Józef Kucia <jkucia(a)codeweavers.com> Date: Tue Jan 3 13:46:29 2017 +0100 d3d10core/tests: Add test for render target device mismatch. Signed-off-by: Józef Kucia <jkucia(a)codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/d3d10core/tests/device.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/dlls/d3d10core/tests/device.c b/dlls/d3d10core/tests/device.c index e3d170a..0b38265 100644 --- a/dlls/d3d10core/tests/device.c +++ b/dlls/d3d10core/tests/device.c @@ -10223,6 +10223,35 @@ static void test_primitive_restart(void) release_test_context(&test_context); } +static void test_render_target_device_mismatch(void) +{ + struct d3d10core_test_context test_context; + ID3D10RenderTargetView *rtv; + ID3D10Device *device; + ULONG refcount; + + if (!init_test_context(&test_context)) + return; + + device = create_device(); + ok(!!device, "Failed to create device.\n"); + + rtv = (ID3D10RenderTargetView *)0xdeadbeef; + ID3D10Device_OMGetRenderTargets(device, 1, &rtv, NULL); + ok(!rtv, "Got unexpected render target view %p.\n", rtv); + ID3D10Device_OMSetRenderTargets(device, 1, &test_context.backbuffer_rtv, NULL); + ID3D10Device_OMGetRenderTargets(device, 1, &rtv, NULL); + ok(rtv == test_context.backbuffer_rtv, "Got unexpected render target view %p.\n", rtv); + ID3D10RenderTargetView_Release(rtv); + + rtv = NULL; + ID3D10Device_OMSetRenderTargets(device, 1, &rtv, NULL); + + refcount = ID3D10Device_Release(device); + ok(!refcount, "Device has %u references left.\n", refcount); + release_test_context(&test_context); +} + START_TEST(device) { test_feature_level(); @@ -10281,4 +10310,5 @@ START_TEST(device) test_stencil_separate(); test_sm4_ret_instruction(); test_primitive_restart(); + test_render_target_device_mismatch(); }
participants (1)
-
Alexandre Julliard