Module: wine Branch: master Commit: 8485eb02dc8f7386caab4ad68433ab601c352872 URL: http://source.winehq.org/git/wine.git/?a=commit;h=8485eb02dc8f7386caab4ad684...
Author: Günther Brammer GBrammer@gmx.de Date: Thu Dec 21 00:06:03 2006 +0100
ddraw: Add a test for IDirectDrawSurface_SetColorKey.
---
dlls/ddraw/tests/dsurface.c | 22 ++++++++++++++++++++++ 1 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/dlls/ddraw/tests/dsurface.c b/dlls/ddraw/tests/dsurface.c index 3d70f82..792a014 100644 --- a/dlls/ddraw/tests/dsurface.c +++ b/dlls/ddraw/tests/dsurface.c @@ -167,6 +167,7 @@ static void SrcColorKey32BlitTest(void) LPDIRECTDRAWSURFACE lpDst; DDSURFACEDESC ddsd; DDSURFACEDESC ddsd2; + DDCOLORKEY DDColorKey; LPDWORD lpData; HRESULT rc;
@@ -223,6 +224,27 @@ static void SrcColorKey32BlitTest(void) rc = IDirectDrawSurface_Unlock(lpDst, NULL); ok(rc==DD_OK,"Unlock returned: %x\n",rc);
+ /* Also test SetColorKey */ + IDirectDrawSurface_GetColorKey(lpSrc, DDCKEY_SRCBLT, &DDColorKey); + ok(DDColorKey.dwColorSpaceLowValue == 0xFF00FF && DDColorKey.dwColorSpaceHighValue == 0xFF00FF, + "GetColorKey does not return the colorkey used at surface creation\n"); + + DDColorKey.dwColorSpaceLowValue = 0x00FF00; + DDColorKey.dwColorSpaceHighValue = 0x00FF00; + IDirectDrawSurface_SetColorKey(lpSrc, DDCKEY_SRCBLT, &DDColorKey); + + DDColorKey.dwColorSpaceLowValue = 0; + DDColorKey.dwColorSpaceHighValue = 0; + IDirectDrawSurface_GetColorKey(lpSrc, DDCKEY_SRCBLT, &DDColorKey); + ok(DDColorKey.dwColorSpaceLowValue == 0x00FF00 && DDColorKey.dwColorSpaceHighValue == 0x00FF00, + "GetColorKey does not return the colorkey set with SetColorKey\n"); + + ddsd.ddckCKSrcBlt.dwColorSpaceLowValue = 0; + ddsd.ddckCKSrcBlt.dwColorSpaceHighValue = 0; + IDirectDrawSurface_GetSurfaceDesc(lpSrc, &ddsd); + ok(ddsd.ddckCKSrcBlt.dwColorSpaceLowValue == 0x00FF00 && ddsd.ddckCKSrcBlt.dwColorSpaceHighValue == 0x00FF00, + "GetSurfaceDesc does not return the colorkey set with SetColorKey\n"); + IDirectDrawSurface_Release(lpSrc); IDirectDrawSurface_Release(lpDst); }