diff --git a/rostests/dxtest/ddraw/tests/CreateDDraw.cpp b/rostests/dxtest/ddraw/tests/CreateDDraw.cpp index 4bc171d126b..302636eda0b 100644 --- a/rostests/dxtest/ddraw/tests/CreateDDraw.cpp +++ b/rostests/dxtest/ddraw/tests/CreateDDraw.cpp @@ -93,90 +93,260 @@ BOOL Test_GetAvailableVidMem (INT* passed, INT* failed) /* Here we go */ DWORD Total, Free; DDSCAPS2 Caps = { 0 }; + TEST (DirectDraw->GetAvailableVidMem(&Caps, NULL, NULL) == DDERR_INVALIDPARAMS); TEST (DirectDraw->GetAvailableVidMem(NULL, &Total, &Free) == DDERR_INVALIDPARAMS); TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); /* testing caps */ + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_RESERVED1; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_ALPHA; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_BACKBUFFER; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDPARAMS ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_COMPLEX; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDPARAMS ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_FLIP; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDPARAMS ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_FRONTBUFFER; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDPARAMS ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_OFFSCREENPLAIN; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_OVERLAY; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_PALETTE; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDPARAMS ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_PRIMARYSURFACE; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_RESERVED3; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_SYSTEMMEMORY; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDPARAMS ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_TEXTURE; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_3DDEVICE; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_VIDEOMEMORY; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_VISIBLE; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDPARAMS ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_WRITEONLY; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDPARAMS ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_ZBUFFER; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_OWNDC; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDPARAMS ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_LIVEVIDEO; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_HWCODEC; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_MODEX; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_MIPMAP; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_RESERVED2; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_ALLOCONLOAD; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_VIDEOPORT; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK ); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_LOCALVIDMEM; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps = DDSCAPS_NONLOCALVIDMEM; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); - Caps.dwCaps = 0; + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = 0x01; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDCAPS); - // FIXME - Caps.dwCaps2 = 0; + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_RESERVED4; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_HINTDYNAMIC; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_HINTSTATIC; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_TEXTUREMANAGE; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_RESERVED1; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_RESERVED2; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_OPAQUE; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_HINTANTIALIASING; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_CUBEMAP; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_CUBEMAP_POSITIVEX; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_CUBEMAP_NEGATIVEX; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_CUBEMAP_POSITIVEY; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_CUBEMAP_NEGATIVEY; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_CUBEMAP_POSITIVEZ; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_CUBEMAP_NEGATIVEZ; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_MIPMAPSUBLEVEL; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_D3DTEXTUREMANAGE; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_DONOTPERSIST; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_STEREOSURFACELEFT; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_VOLUME; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_NOTUSERLOCKABLE; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_POINTS; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_RTPATCHES; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_NPATCHES; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_RESERVED3; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_DISCARDBACKBUFFER; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_ENABLEALPHACHANNEL; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_EXTENDEDFORMATPRIMARY; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps2 = DDSCAPS2_ADDITIONALPRIMARY; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); - Caps.dwCaps = 0; - Caps.dwCaps2 = 0; // FIXME + memset(&Caps,0,sizeof(DDSCAPS2)); Caps.dwCaps3 = 0; TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); - Caps.dwCaps = 0; - Caps.dwCaps2 = 0; - Caps.dwCaps3 = 0; - // FIXME - Caps.dwCaps4 = 0; + /* dwCaps does not accpect any input param */ + memset(&Caps,0,sizeof(DDSCAPS2)); TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DD_OK); + memset(&Caps,0,sizeof(DDSCAPS2)); + Caps.dwCaps4 = 1; + TEST (DirectDraw->GetAvailableVidMem(&Caps, &Total, &Free) == DDERR_INVALIDCAPS ); + DirectDraw->Release();