reactos/modules/rostests/apitests/win32nt/ntgdi/NtGdiSelectFont.c
Katayama Hirofumi MZ 62f6e3b397
[WIN32KNT_APITEST] Tabs To Spaces (#1326)
Converts Tabs to Spaces.
2019-01-30 22:55:10 +09:00

54 lines
1.3 KiB
C

/*
* PROJECT: ReactOS api tests
* LICENSE: GPL - See COPYING in the top level directory
* PURPOSE: Test for NtGdiSelectFont
* PROGRAMMERS:
*/
#include <win32nt.h>
START_TEST(NtGdiSelectFont)
{
HDC hDC;
HFONT hFont, hOldFont;
hDC = CreateDCW(L"DISPLAY", NULL, NULL, NULL);
hFont = GetStockObject(DEFAULT_GUI_FONT);
/* Test NULL DC */
SetLastError(ERROR_SUCCESS);
hOldFont = NtGdiSelectFont(NULL, hFont);
TEST(hOldFont == NULL);
TEST(GetLastError() == ERROR_SUCCESS);
/* Test invalid DC */
SetLastError(ERROR_SUCCESS);
hOldFont = NtGdiSelectFont((HDC)((ULONG_PTR)hDC & 0x0000ffff), hFont);
TEST(hOldFont == NULL);
TEST(GetLastError() == ERROR_SUCCESS);
/* Test NULL font */
SetLastError(ERROR_SUCCESS);
hOldFont = NtGdiSelectFont(hDC, NULL);
TEST(hOldFont == NULL);
TEST(GetLastError() == ERROR_SUCCESS);
/* Test invalid font */
SetLastError(ERROR_SUCCESS);
hOldFont = NtGdiSelectFont(hDC, (HFONT)((ULONG_PTR)hFont & 0x0000ffff));
TEST(hOldFont == NULL);
TEST(GetLastError() == ERROR_SUCCESS);
SetLastError(ERROR_SUCCESS);
hOldFont = NtGdiSelectFont(hDC, hFont);
TEST(hOldFont != NULL);
hOldFont = NtGdiSelectFont(hDC, hOldFont);
TEST(hOldFont == hFont);
TEST(GetLastError() == ERROR_SUCCESS);
DeleteDC(hDC);
}