Günther Brammer : ddraw: Add a test for IDirectDrawSurface_SetColorKey.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Dec 21 10:36:28 CST 2006


Module: wine
Branch: master
Commit: 8485eb02dc8f7386caab4ad68433ab601c352872
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=8485eb02dc8f7386caab4ad68433ab601c352872

Author: Günther Brammer <GBrammer at 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);
 }




More information about the wine-cvs mailing list