mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 18:42:56 +00:00
[GDI32_APITEST] Strengthen PatBlt with negative values
CORE-19334
This commit is contained in:
parent
0bfa0cd0d2
commit
f3bd8ffb20
1 changed files with 34 additions and 8 deletions
|
@ -1,8 +1,9 @@
|
||||||
/*
|
/*
|
||||||
* PROJECT: ReactOS api tests
|
* PROJECT: ReactOS api tests
|
||||||
* LICENSE: GPL - See COPYING in the top level directory
|
* LICENSE: GPL - See COPYING in the top level directory
|
||||||
* PURPOSE: Test for ...
|
* PURPOSE: Test for PatBlt
|
||||||
* PROGRAMMERS: Timo Kreuzer
|
* PROGRAMMERS: Timo Kreuzer
|
||||||
|
* Katayama Hirofumi MZ
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "precomp.h"
|
#include "precomp.h"
|
||||||
|
@ -16,6 +17,8 @@ void Test_PatBlt_Params()
|
||||||
BOOL ret;
|
BOOL ret;
|
||||||
ULONG i, rop;
|
ULONG i, rop;
|
||||||
HDC hdc;
|
HDC hdc;
|
||||||
|
HBITMAP hBitmap;
|
||||||
|
HGDIOBJ hOldBitmap;
|
||||||
|
|
||||||
/* Test a rop that contains only the operation index */
|
/* Test a rop that contains only the operation index */
|
||||||
ret = PatBlt(hdcTarget, 0, 0, 1, 1, PATCOPY & 0x00FF0000);
|
ret = PatBlt(hdcTarget, 0, 0, 1, 1, PATCOPY & 0x00FF0000);
|
||||||
|
@ -73,8 +76,36 @@ void Test_PatBlt_Params()
|
||||||
ok_err(0);
|
ok_err(0);
|
||||||
DeleteDC(hdc);
|
DeleteDC(hdc);
|
||||||
|
|
||||||
|
/* Test with bitmap and negative values */
|
||||||
|
hdc = CreateCompatibleDC(NULL);
|
||||||
|
hBitmap = CreateCompatibleBitmap(hdc, 8, 8);
|
||||||
|
hOldBitmap = SelectObject(hdc, hBitmap);
|
||||||
|
SelectObject(hdc, GetStockObject(WHITE_BRUSH));
|
||||||
|
ok_long(PatBlt(hdc, 2, 2, -1, 1, PATCOPY), TRUE);
|
||||||
|
ok_long(GetPixel(hdc, 1, 1), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 1, 2), RGB(255, 255, 255));
|
||||||
|
ok_long(GetPixel(hdc, 1, 3), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 2, 1), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 2, 2), RGB(0, 0, 0));
|
||||||
|
SetPixel(hdc, 1, 2, RGB(0, 0, 0));
|
||||||
|
ok_long(PatBlt(hdc, 2, 2, 1, -1, PATCOPY), TRUE);
|
||||||
|
ok_long(GetPixel(hdc, 1, 2), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 1, 3), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 2, 1), RGB(255, 255, 255));
|
||||||
|
ok_long(GetPixel(hdc, 2, 2), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 2, 3), RGB(0, 0, 0));
|
||||||
|
SetPixel(hdc, 2, 1, RGB(0, 0, 0));
|
||||||
|
ok_long(PatBlt(hdc, 3, 2, -2, -1, PATCOPY), TRUE);
|
||||||
|
ok_long(GetPixel(hdc, 0, 2), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 0, 3), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 1, 1), RGB(255, 255, 255));
|
||||||
|
ok_long(GetPixel(hdc, 1, 2), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 1, 3), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 2, 1), RGB(255, 255, 255));
|
||||||
|
ok_long(GetPixel(hdc, 2, 2), RGB(0, 0, 0));
|
||||||
|
ok_long(GetPixel(hdc, 2, 3), RGB(0, 0, 0));
|
||||||
|
DeleteObject(SelectObject(hdc, hOldBitmap));
|
||||||
|
DeleteDC(hdc);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Test_BrushOrigin()
|
void Test_BrushOrigin()
|
||||||
|
@ -120,7 +151,6 @@ void Test_BrushOrigin()
|
||||||
ok_long(gpulTargetBits[16], 0);
|
ok_long(gpulTargetBits[16], 0);
|
||||||
ok_long(gpulTargetBits[17], 0xffffff);
|
ok_long(gpulTargetBits[17], 0xffffff);
|
||||||
ok_long(gpulTargetBits[18], 0);
|
ok_long(gpulTargetBits[18], 0);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
START_TEST(PatBlt)
|
START_TEST(PatBlt)
|
||||||
|
@ -157,7 +187,6 @@ START_TEST(PatBlt)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (!SelectObject(hdcTarget, ghbmpTarget))
|
if (!SelectObject(hdcTarget, ghbmpTarget))
|
||||||
{
|
{
|
||||||
printf("Failed to select bitmap\n");
|
printf("Failed to select bitmap\n");
|
||||||
|
@ -167,7 +196,4 @@ START_TEST(PatBlt)
|
||||||
Test_PatBlt_Params();
|
Test_PatBlt_Params();
|
||||||
|
|
||||||
Test_BrushOrigin();
|
Test_BrushOrigin();
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue