1 /* 2 * PROJECT: ReactOS api tests 3 * LICENSE: GPL - See COPYING in the top level directory 4 * PURPOSE: Test for NtGdiEnumFontOpen 5 * PROGRAMMERS: 6 */ 7 8 #include <win32nt.h> 9 10 START_TEST(NtGdiEnumFontOpen) 11 { 12 HDC hDC; 13 ULONG_PTR idEnum; 14 ULONG ulCount; 15 PENTRY pEntry; 16 17 hDC = CreateDCW(L"DISPLAY",NULL,NULL,NULL); 18 19 // FIXME: We should load the font first 20 21 idEnum = NtGdiEnumFontOpen(hDC, 2, 0, 32, L"Courier", ANSI_CHARSET, &ulCount); 22 ok(idEnum != 0, "idEnum was 0.\n"); 23 if (idEnum == 0) 24 { 25 skip("idEnum == 0"); 26 return; 27 } 28 29 /* we should have a gdi handle here */ 30 ok_int((int)GDI_HANDLE_GET_TYPE(idEnum), (int)GDI_OBJECT_TYPE_ENUMFONT); 31 pEntry = &GdiHandleTable[GDI_HANDLE_GET_INDEX(idEnum)]; 32 ok(pEntry->einfo.pobj != NULL, "pEntry->einfo.pobj was NULL.\n"); 33 ok_long(pEntry->ObjectOwner.ulObj, GetCurrentProcessId()); 34 ok_ptr(pEntry->pUser, NULL); 35 ok_int(pEntry->FullUnique, (idEnum >> 16)); 36 ok_int(pEntry->Objt, GDI_OBJECT_TYPE_ENUMFONT >> 16); 37 ok_int(pEntry->Flags, 0); 38 39 /* We should not be able to use DeleteObject() on the handle */ 40 ok_int(DeleteObject((HGDIOBJ)idEnum), FALSE); 41 42 NtGdiEnumFontClose(idEnum); 43 44 // Test no logfont (NULL): should word 45 // Test empty lfFaceName string: should not work 46 } 47