[GDI32_APITEST]

- add a basic test for SetDIBits

svn path=/trunk/; revision=50946
This commit is contained in:
Jérôme Gardou 2011-03-01 20:50:47 +00:00
parent 1a7f618d3b
commit a5115608c9
4 changed files with 60 additions and 0 deletions

View file

@ -40,6 +40,7 @@ list(APPEND SOURCE
MaskBlt.c
SelectObject.c
SetDCPenColor.c
SetDIBits.c
SetMapMode.c
SetSysColors.c
SetWindowExtEx.c

View file

@ -0,0 +1,56 @@
/*
* PROJECT: ReactOS api tests
* LICENSE: GPL - See COPYING in the top level directory
* PURPOSE: Test for SetDIBits
* PROGRAMMERS: Jérôme Gardou
*/
#include <stdio.h>
#include <wine/test.h>
#include <windows.h>
void Test_SetDIBits()
{
char buffer[sizeof(BITMAPINFOHEADER)+2*sizeof(RGBQUAD)];
ULONG* dibBuffer;
BITMAPINFO* pBMI = (BITMAPINFO*)buffer;
DWORD bits1bpp[2] = {0, 1};
HBITMAP hbmp;
int ret;
ZeroMemory(buffer, sizeof(buffer));
pBMI->bmiHeader.biSize=sizeof(BITMAPINFOHEADER);
pBMI->bmiHeader.biWidth=2;
pBMI->bmiHeader.biHeight=1;
pBMI->bmiHeader.biPlanes=1;
pBMI->bmiHeader.biBitCount=32;
pBMI->bmiHeader.biCompression=BI_RGB;
pBMI->bmiHeader.biSizeImage=0;
pBMI->bmiHeader.biXPelsPerMeter=0;
pBMI->bmiHeader.biYPelsPerMeter=0;
pBMI->bmiHeader.biClrUsed=0;
pBMI->bmiHeader.biClrImportant=0;
hbmp = CreateDIBSection(NULL, pBMI, DIB_RGB_COLORS, (PVOID*)&dibBuffer, NULL, 0);
ok(hbmp!=NULL, "Failed to create a DIB section\n");
pBMI->bmiHeader.biBitCount = 1;
pBMI->bmiColors[0].rgbBlue = 0xFF;
pBMI->bmiColors[0].rgbGreen = 0xFF;
pBMI->bmiColors[0].rgbRed = 0xFF;
ret = SetDIBits(NULL, hbmp, 0, 1, bits1bpp, pBMI, DIB_RGB_COLORS);
ok(ret == 1, "Copied %i scanlines\n", ret);
ok(dibBuffer[0] = 0xFFFFFF, "Wrong color 0x%08x after SetDIBits\n", (unsigned int)dibBuffer[0]);
ok(dibBuffer[1] = 0xFFFFFF, "Wrong color 0x%08x after SetDIBits\n", (unsigned int)dibBuffer[1]);
DeleteObject(hbmp);
}
START_TEST(SetDIBits)
{
Test_SetDIBits();
}

View file

@ -47,6 +47,7 @@
<file>MaskBlt.c</file>
<file>SelectObject.c</file>
<file>SetDCPenColor.c</file>
<file>SetDIBits.c</file>
<file>SetMapMode.c</file>
<file>SetSysColors.c</file>
<file>SetWindowExtEx.c</file>

View file

@ -43,6 +43,7 @@ extern void func_GetTextFace(void);
extern void func_MaskBlt(void);
extern void func_SelectObject(void);
extern void func_SetDCPenColor(void);
extern void func_SetDIBits(void);
extern void func_SetMapMode(void);
extern void func_SetSysColors(void);
extern void func_SetWindowExtEx(void);
@ -88,6 +89,7 @@ const struct test winetest_testlist[] =
{ "MaskBlt", func_MaskBlt },
{ "SelectObject", func_SelectObject },
{ "SetDCPenColor", func_SetDCPenColor },
{ "SetDIBits", func_SetDIBits },
{ "SetMapMode", func_SetMapMode },
{ "SetSysColors", func_SetSysColors },
{ "SetWindowExtEx", func_SetWindowExtEx },