2012/11/27 Detlef Riekenberg <wine....@web.de>: > While inspecting a test failure, i found only > 3 possible results for the line test: > - d3dx9_36.dll not present > - all tests skipped > line.c:146: Tests skipped: Failed to create IDirect3DDevice9 object > 0x8876086c > - refcount test failed > line.c:113: Test failed: Got 5 references to device 0023EA60, expected 2 > (of course with different device pointer) > > See: http://test.winehq.org/data/tests/d3dx9_36:line.html > > I prefer to mark the refcount as implementation detail and remove the > refcount test. > > My second way to fix the test failure is the attached patch. > Since the test was accepted to wine, there must be a machine somewhere > with a refcount of 2, so i marked that result as broken. >
I think the test was accepted simply because it passed on Wine while it wasn't actually executed on WineTestBot. So yeah, removing the refcount test or adding a todo_wine is probably the way to go, adding a broken(ref == 2) doesn't seem to make much sense. Thanks for bringing this up. > d3d is not my area, so please comment. > > -- > By by ... Detlef > --- > dlls/d3dx9_36/tests/line.c | 4 +++- > 1 files changed, 3 insertions(+), 1 deletions(-) > > diff --git a/dlls/d3dx9_36/tests/line.c b/dlls/d3dx9_36/tests/line.c > index dc0c747..6ed508b 100644 > --- a/dlls/d3dx9_36/tests/line.c > +++ b/dlls/d3dx9_36/tests/line.c > @@ -110,7 +110,9 @@ static void test_create_line(IDirect3DDevice9* device) > expect_mat(&world, &result); > > ref = IDirect3DDevice9_Release(return_device); > - ok(ref == 2, "Got %x references to device %p, expected 2\n", ref, > return_device); > + todo_wine > + ok(broken(ref == 2) || ref == 5, > + "Got %x references to device %p, expected 5\n", ref, return_device); > > ref = ID3DXLine_Release(line); > ok(ref == 0, "Got %x references to line %p, expected 0\n", ref, line); > -- > 1.7.5.4 > > >