reactos/rostests/apitests/w32knapi/ntgdi/NtGdiSelectBrush.c

48 lines
1.1 KiB
C
Raw Normal View History

INT
Test_NtGdiSelectBrush(PTESTINFO pti)
{
HDC hDC;
HBRUSH hBrush, hOldBrush;
hDC = CreateDCW(L"DISPLAY", NULL, NULL, NULL);
hBrush = GetStockObject(GRAY_BRUSH);
/* Test NULL DC */
SetLastError(ERROR_SUCCESS);
hOldBrush = NtGdiSelectBrush(NULL, hBrush);
TEST(hOldBrush == NULL);
TEST(GetLastError() == ERROR_SUCCESS);
/* Test invalid DC */
SetLastError(ERROR_SUCCESS);
hOldBrush = NtGdiSelectBrush((HDC)((ULONG_PTR)hDC & 0x0000ffff), hBrush);
TEST(hOldBrush == NULL);
TEST(GetLastError() == ERROR_SUCCESS);
/* Test NULL brush */
SetLastError(ERROR_SUCCESS);
hOldBrush = NtGdiSelectBrush(hDC, NULL);
TEST(hOldBrush == NULL);
TEST(GetLastError() == ERROR_SUCCESS);
/* Test invalid brush */
SetLastError(ERROR_SUCCESS);
hOldBrush = NtGdiSelectBrush(hDC, (HBRUSH)((ULONG_PTR)hBrush & 0x0000ffff));
TEST(hOldBrush == NULL);
TEST(GetLastError() == ERROR_SUCCESS);
SetLastError(ERROR_SUCCESS);
hOldBrush = NtGdiSelectBrush(hDC, hBrush);
TEST(hOldBrush != NULL);
hOldBrush = NtGdiSelectBrush(hDC, hOldBrush);
TEST(hOldBrush == hBrush);
TEST(GetLastError() == ERROR_SUCCESS);
DeleteDC(hDC);
return APISTATUS_NORMAL;
}