Charles Welton : d3dx9/tests: Add tests for ID3DXLine_GetDevice and release methods.
Module: wine Branch: master Commit: 754df82101f55348a17a2bdd843fba40f41bcde3 URL: http://source.winehq.org/git/wine.git/?a=commit;h=754df82101f55348a17a2bdd84... Author: Charles Welton <charleswfb(a)gmail.com> Date: Thu Jun 16 17:19:59 2011 -0300 d3dx9/tests: Add tests for ID3DXLine_GetDevice and release methods. --- dlls/d3dx9_36/tests/line.c | 21 +++++++++++++++++++-- 1 files changed, 19 insertions(+), 2 deletions(-) diff --git a/dlls/d3dx9_36/tests/line.c b/dlls/d3dx9_36/tests/line.c index 56bc7f6..7523e1f 100644 --- a/dlls/d3dx9_36/tests/line.c +++ b/dlls/d3dx9_36/tests/line.c @@ -23,6 +23,8 @@ static void test_create_line(IDirect3DDevice9* device) { HRESULT hr; LPD3DXLINE line = NULL; + LPDIRECT3DDEVICE9 return_device; + ULONG ref; hr = D3DXCreateLine(NULL, &line); ok(hr == D3DERR_INVALIDCALL, "Got result %x, expected %x (D3D_INVALIDCALL)\n", hr, D3DERR_INVALIDCALL); @@ -33,8 +35,23 @@ static void test_create_line(IDirect3DDevice9* device) hr = D3DXCreateLine(device, &line); ok(hr == D3D_OK, "Got result %x, expected 0 (D3D_OK)\n", hr); - if (line) - ID3DXLine_Release(line); + if (FAILED(hr)) + { + return; + } + + hr = ID3DXLine_GetDevice(line, NULL); + ok(hr == D3DERR_INVALIDCALL, "Got result %x, expected %x (D3D_INVALIDCALL)\n", hr, D3DERR_INVALIDCALL); + + hr = ID3DXLine_GetDevice(line, &return_device); + ok(hr == D3D_OK, "Got result %x, expected %x (D3D_OK)\n", hr, D3D_OK); + ok(return_device == device, "Expected line device %p, got %p\n", device, return_device); + + ref = IDirect3DDevice9_Release(return_device); + ok(ref == 2, "Got %x references to device %p, expected 2\n", ref, return_device); + + ref = ID3DXLine_Release(line); + ok(ref == 0, "Got %x references to line %p, expected 0\n", ref, line); } START_TEST(line)
participants (1)
-
Alexandre Julliard