Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com>
---
dlls/gdi32/tests/font.c | 101 +++++++---------------------------------
1 file changed, 18 insertions(+), 83 deletions(-)
diff --git a/dlls/gdi32/tests/font.c b/dlls/gdi32/tests/font.c
index bc07f11b2c..7e90a50d84 100644
--- a/dlls/gdi32/tests/font.c
+++ b/dlls/gdi32/tests/font.c
@@ -407,9 +407,9 @@ static void test_bitmap_font(void)
ret = EnumFontFamiliesA(hdc, "System", font_enum_proc, (LPARAM)&bitmap_lf);
if (ret)
{
- ReleaseDC(0, hdc);
- trace("no bitmap fonts were found, skipping the test\n");
- return;
+ ReleaseDC(0, hdc);
+ skip("no bitmap fonts were found, skipping the test\n");
+ return;
}
trace("found bitmap font %s, height %d\n", bitmap_lf.lfFaceName, bitmap_lf.lfHeight);
@@ -570,7 +570,6 @@ static void test_outline_font(void)
SetLastError(0xdeadbeef);
ret = GetGlyphOutlineA(hdc, 'A', GGO_METRICS, &gm, 0, NULL, &mat);
ok(ret != GDI_ERROR, "GetGlyphOutlineA error %d\n", GetLastError());
- trace("gm.gmCellIncX %d, width_orig %d\n", gm.gmCellIncX, width_orig);
ok(gm.gmCellIncX == width_orig, "incX %d != %d\n", gm.gmCellIncX, width_orig);
ok(gm.gmCellIncY == 0, "incY %d != 0\n", gm.gmCellIncY);
/* with a custom matrix */
@@ -578,7 +577,6 @@ static void test_outline_font(void)
SetLastError(0xdeadbeef);
ret = GetGlyphOutlineA(hdc, 'A', GGO_METRICS, &gm, 0, NULL, &mat2);
ok(ret != GDI_ERROR, "GetGlyphOutlineA error %d\n", GetLastError());
- trace("gm.gmCellIncX %d, width_orig %d\n", gm.gmCellIncX, width_orig);
ok(gm.gmCellIncX == width_orig/2, "incX %d != %d\n", gm.gmCellIncX, width_orig/2);
ok(gm.gmCellIncY == 0, "incY %d != 0\n", gm.gmCellIncY);
@@ -650,7 +648,6 @@ static void test_outline_font(void)
SetLastError(0xdeadbeef);
ret = GetGlyphOutlineA(hdc, 'A', GGO_METRICS, &gm, 0, NULL, &mat);
ok(ret != GDI_ERROR, "GetGlyphOutlineA error %d\n", GetLastError());
- trace("gm.gmCellIncX %d, width_orig %d\n", gm.gmCellIncX, width_orig);
pt.x = width_orig; pt.y = 0;
LPtoDP(hdc, &pt, 1);
ok(gm.gmCellIncX == pt.x, "incX %d != %d\n", gm.gmCellIncX, pt.x);
@@ -661,7 +658,6 @@ static void test_outline_font(void)
SetLastError(0xdeadbeef);
ret = GetGlyphOutlineA(hdc, 'A', GGO_METRICS, &gm, 0, NULL, &mat2);
ok(ret != GDI_ERROR, "GetGlyphOutlineA error %d\n", GetLastError());
- trace("gm.gmCellIncX %d, width_orig %d\n", gm.gmCellIncX, width_orig);
pt.x = width_orig; pt.y = 0;
LPtoDP(hdc, &pt, 1);
ok(gm.gmCellIncX == pt.x/2, "incX %d != %d\n", gm.gmCellIncX, pt.x/2);
@@ -679,7 +675,6 @@ static void test_outline_font(void)
SetLastError(0xdeadbeef);
ret = GetGlyphOutlineA(hdc, 'A', GGO_METRICS, &gm, 0, NULL, &mat);
ok(ret != GDI_ERROR, "GetGlyphOutlineA error %d\n", GetLastError());
- trace("gm.gmCellIncX %d, width_orig %d\n", gm.gmCellIncX, width_orig);
pt.x = width_orig; pt.y = 0;
LPtoDP(hdc, &pt, 1);
ok(near_match(gm.gmCellIncX, pt.x), "incX %d != %d\n", gm.gmCellIncX, pt.x);
@@ -689,7 +684,6 @@ static void test_outline_font(void)
SetLastError(0xdeadbeef);
ret = GetGlyphOutlineA(hdc, 'A', GGO_METRICS, &gm, 0, NULL, &mat2);
ok(ret != GDI_ERROR, "GetGlyphOutlineA error %d\n", GetLastError());
- trace("gm.gmCellIncX %d, width_orig %d\n", gm.gmCellIncX, width_orig);
pt.x = width_orig; pt.y = 0;
LPtoDP(hdc, &pt, 1);
ok(near_match(gm.gmCellIncX, (pt.x + 1)/2), "incX %d != %d\n", gm.gmCellIncX, (pt.x + 1)/2);
@@ -706,7 +700,6 @@ static void test_outline_font(void)
SetLastError(0xdeadbeef);
ret = GetGlyphOutlineA(hdc, 'A', GGO_METRICS, &gm, 0, NULL, &mat);
ok(ret != GDI_ERROR, "GetGlyphOutlineA error %d\n", GetLastError());
- trace("gm.gmCellIncX %d, width_orig %d\n", gm.gmCellIncX, width_orig);
pt.x = width_orig; pt.y = 0;
LPtoDP(hdc, &pt, 1);
ok(gm.gmCellIncX == pt.x, "incX %d != %d\n", gm.gmCellIncX, pt.x);
@@ -717,7 +710,6 @@ static void test_outline_font(void)
SetLastError(0xdeadbeef);
ret = GetGlyphOutlineA(hdc, 'A', GGO_METRICS, &gm, 0, NULL, &mat2);
ok(ret != GDI_ERROR, "GetGlyphOutlineA error %d\n", GetLastError());
- trace("gm.gmCellIncX %d, width_orig %d\n", gm.gmCellIncX, width_orig);
pt.x = width_orig; pt.y = 0;
LPtoDP(hdc, &pt, 1);
ok(gm.gmCellIncX == pt.x/2, "incX %d != %d\n", gm.gmCellIncX, pt.x/2);
@@ -1011,13 +1003,9 @@ static void test_bitmap_font_metrics(void)
else
ok(ret == expected_cs, "got charset %d, expected %d\n", ret, expected_cs);
- trace("created %s, height %d charset %x dpi %d\n", face_name, tm.tmHeight, tm.tmCharSet, tm.tmDigitizedAspectX);
- trace("expected %s, height %d scaled_height %d, dpi %d\n", fd[i].face_name, height, fd[i].scaled_height, fd[i].dpi);
-
if(fd[i].dpi == tm.tmDigitizedAspectX)
{
int skipme = 0;
- trace("matched %s, height %d charset %x dpi %d\n", lf.lfFaceName, lf.lfHeight, lf.lfCharSet, fd[i].dpi);
if (fd[i].skip_lang_id)
{
int si = 0;
@@ -1384,7 +1372,7 @@ static void test_GetCharABCWidths(void)
}
ReleaseDC(NULL, hdc);
- trace("ABC sign test for a variety of transforms:\n");
+ /* ABC sign test for a variety of transforms */
memset(&lf, 0, sizeof(lf));
strcpy(lf.lfFaceName, "Tahoma");
lf.lfHeight = 20;
@@ -1420,7 +1408,7 @@ static void test_GetCharABCWidths(void)
ReleaseDC(hwnd, hdc);
DestroyWindow(hwnd);
- trace("RTL layout\n");
+ /* RTL layout */
hwnd = CreateWindowExA(WS_EX_LAYOUTRTL, "static", "", WS_POPUP, 0,0,100,100,
0, 0, 0, NULL);
hdc = GetDC(hwnd);
@@ -1773,12 +1761,10 @@ static void test_GetKerningPairs(void)
if (!is_font_installed(kd[i].face_name))
{
- trace("%s is not installed so skipping this test\n", kd[i].face_name);
+ skip("%s is not installed so skipping this test\n", kd[i].face_name);
continue;
}
- trace("testing font %s, height %d\n", kd[i].face_name, kd[i].height);
-
memset(&lf, 0, sizeof(lf));
strcpy(lf.lfFaceName, kd[i].face_name);
lf.lfHeight = kd[i].height;
@@ -1824,7 +1810,6 @@ todo_wine
kd[i].otmusMinimumPPEM, otm.otmusMinimumPPEM);
total_kern_pairs = GetKerningPairsW(hdc, 0, NULL);
- trace("total_kern_pairs %u\n", total_kern_pairs);
kern_pair = HeapAlloc(GetProcessHeap(), 0, total_kern_pairs * sizeof(*kern_pair));
/* Win98 (GetKerningPairsA) and XP behave differently here, the test
@@ -1850,10 +1835,7 @@ todo_wine
for (n = 0; n < ret; n++)
{
DWORD j;
- /* Disabled to limit console spam */
- if (0 && kern_pair[n].wFirst < 127 && kern_pair[n].wSecond < 127)
- trace("{'%c','%c',%d},\n",
- kern_pair[n].wFirst, kern_pair[n].wSecond, kern_pair[n].iKernAmount);
+
for (j = 0; j < kd[i].total_kern_pairs; j++)
{
if (kern_pair[n].wFirst == kd[i].kern_pair[j].wFirst &&
@@ -2231,7 +2213,6 @@ static void test_GetOutlineTextMetrics(void)
hfont_old = SelectObject(hdc, hfont);
otm_size = GetOutlineTextMetricsA(hdc, 0, NULL);
- trace("otm buffer size %u (0x%x)\n", otm_size, otm_size);
otm = HeapAlloc(GetProcessHeap(), 0, otm_size);
@@ -2667,7 +2648,7 @@ static void test_GdiGetCodePage(void)
HDC hdc;
LOGFONTA lf;
HFONT hfont;
- UINT charset, acp;
+ UINT acp;
DWORD codepage;
int i;
@@ -2701,10 +2682,7 @@ static void test_GdiGetCodePage(void)
ok(hfont != 0, "CreateFontIndirectA error %u\n", GetLastError());
hfont = SelectObject(hdc, hfont);
- charset = GetTextCharset(hdc);
codepage = pGdiGetCodePage(hdc);
- trace("acp=%d, lfFaceName=%s, lfCharSet=%d, GetTextCharset=%d, GdiGetCodePage=%d, expected codepage=%d\n",
- acp, lf.lfFaceName, lf.lfCharSet, charset, codepage, matching_data[i].expected_codepage);
ok(codepage == matching_data[i].expected_codepage,
"GdiGetCodePage should have returned %d, got %d\n", matching_data[i].expected_codepage, codepage);
@@ -2717,10 +2695,7 @@ static void test_GdiGetCodePage(void)
ok(hfont != 0, "CreateFontIndirectA error %u\n", GetLastError());
hfont = SelectObject(hdc, hfont);
- charset = GetTextCharset(hdc);
codepage = pGdiGetCodePage(hdc);
- trace("acp=%d, lfFaceName=%s, lfCharSet=%d, GetTextCharset=%d, GdiGetCodePage=%d\n",
- acp, lf.lfFaceName, lf.lfCharSet, charset, codepage);
ok(codepage == 1252, "GdiGetCodePage returned %d\n", codepage);
hfont = SelectObject(hdc, hfont);
@@ -2737,7 +2712,6 @@ static void test_GetFontUnicodeRanges(void)
HFONT hfont, hfont_old;
DWORD size;
GLYPHSET *gs;
- DWORD i;
if (!pGetFontUnicodeRanges)
{
@@ -2758,17 +2732,13 @@ static void test_GetFontUnicodeRanges(void)
size = pGetFontUnicodeRanges(hdc, NULL);
ok(size, "GetFontUnicodeRanges failed unexpectedly\n");
- gs = HeapAlloc(GetProcessHeap(), 0, size);
+ gs = heap_alloc_zero(size);
size = pGetFontUnicodeRanges(hdc, gs);
ok(size, "GetFontUnicodeRanges failed\n");
+ ok(gs->cRanges, "Unexpected ranges count.\n");
- if (0) /* Disabled to limit console spam */
- for (i = 0; i < gs->cRanges; i++)
- trace("%03d wcLow %04x cGlyphs %u\n", i, gs->ranges[i].wcLow, gs->ranges[i].cGlyphs);
- trace("found %u ranges\n", gs->cRanges);
-
- HeapFree(GetProcessHeap(), 0, gs);
+ heap_free(gs);
SelectObject(hdc, hfont_old);
DeleteObject(hfont);
@@ -2805,9 +2775,6 @@ static INT CALLBACK arial_enum_proc(const LOGFONTA *lf, const TEXTMETRICA *tm, D
ok(ntm->ntmCellHeight + ntm->ntmCellHeight/5 >= ntm->ntmSizeEM, "ntmCellHeight %d should be close to ntmSizeEM %d\n", ntm->ntmCellHeight, ntm->ntmSizeEM);
- if (0) /* Disabled to limit console spam */
- trace("enumed font \"%s\", charset %d, height %d, weight %d, italic %d\n",
- lf->lfFaceName, lf->lfCharSet, lf->lfHeight, lf->lfWeight, lf->lfItalic);
if (efd->total >= efd->size)
{
efd->size = max( (efd->total + 1) * 2, 256 );
@@ -2831,9 +2798,6 @@ static INT CALLBACK arial_enum_procw(const LOGFONTW *lf, const TEXTMETRICW *tm,
ok(ntm->ntmCellHeight + ntm->ntmCellHeight/5 >= ntm->ntmSizeEM, "ntmCellHeight %d should be close to ntmSizeEM %d\n", ntm->ntmCellHeight, ntm->ntmSizeEM);
- if (0) /* Disabled to limit console spam */
- trace("enumed font %s, charset %d, height %d, weight %d, italic %d\n",
- wine_dbgstr_w(lf->lfFaceName), lf->lfCharSet, lf->lfHeight, lf->lfWeight, lf->lfItalic);
if (efd->total >= efd->size)
{
efd->size = max( (efd->total + 1) * 2, 256 );
@@ -2907,8 +2871,6 @@ static void test_EnumFontFamilies(const char *font_name, INT font_charset)
HDC hdc;
int i, ret, ansi_charset, symbol_charset, russian_charset;
- trace("Testing font %s, charset %d\n", *font_name ? font_name : "<empty>", font_charset);
-
if (*font_name && !is_truetype_font_installed(font_name))
{
skip("%s is not installed\n", font_name);
@@ -2935,8 +2897,6 @@ static void test_EnumFontFamilies(const char *font_name, INT font_charset)
if(ret)
{
get_charset_statsW(&efdw, &ansi_charset, &symbol_charset, &russian_charset);
- trace("enumerated ansi %d, symbol %d, russian %d fonts for NULL\n",
- ansi_charset, symbol_charset, russian_charset);
ok(efdw.total > 0, "fonts enumerated: NULL\n");
ok(ansi_charset > 0, "NULL family should enumerate ANSI_CHARSET\n");
ok(symbol_charset > 0, "NULL family should enumerate SYMBOL_CHARSET\n");
@@ -2952,8 +2912,6 @@ static void test_EnumFontFamilies(const char *font_name, INT font_charset)
if(ret)
{
get_charset_statsW(&efdw, &ansi_charset, &symbol_charset, &russian_charset);
- trace("enumerated ansi %d, symbol %d, russian %d fonts for NULL\n",
- ansi_charset, symbol_charset, russian_charset);
ok(efdw.total > 0, "fonts enumerated: NULL\n");
ok(ansi_charset > 0, "NULL family should enumerate ANSI_CHARSET\n");
ok(symbol_charset > 0, "NULL family should enumerate SYMBOL_CHARSET\n");
@@ -2966,9 +2924,6 @@ static void test_EnumFontFamilies(const char *font_name, INT font_charset)
ret = EnumFontFamiliesA(hdc, font_name, arial_enum_proc, (LPARAM)&efd);
ok(ret, "EnumFontFamilies error %u\n", GetLastError());
get_charset_stats(&efd, &ansi_charset, &symbol_charset, &russian_charset);
- trace("enumerated ansi %d, symbol %d, russian %d fonts for %s\n",
- ansi_charset, symbol_charset, russian_charset,
- *font_name ? font_name : "<empty>");
if (*font_name)
ok(efd.total > 0, "no fonts enumerated: %s\n", font_name);
else
@@ -2990,9 +2945,6 @@ static void test_EnumFontFamilies(const char *font_name, INT font_charset)
ret = EnumFontFamiliesExA(hdc, &lf, arial_enum_proc, (LPARAM)&efd, 0);
ok(ret, "EnumFontFamiliesEx error %u\n", GetLastError());
get_charset_stats(&efd, &ansi_charset, &symbol_charset, &russian_charset);
- trace("enumerated ansi %d, symbol %d, russian %d fonts for %s ANSI_CHARSET\n",
- ansi_charset, symbol_charset, russian_charset,
- *font_name ? font_name : "<empty>");
if (font_charset == SYMBOL_CHARSET)
{
if (*font_name)
@@ -3021,9 +2973,6 @@ static void test_EnumFontFamilies(const char *font_name, INT font_charset)
EnumFontFamiliesExA(hdc, &lf, arial_enum_proc, (LPARAM)&efd, 0);
ok(ret, "EnumFontFamiliesEx error %u\n", GetLastError());
get_charset_stats(&efd, &ansi_charset, &symbol_charset, &russian_charset);
- trace("enumerated ansi %d, symbol %d, russian %d fonts for %s DEFAULT_CHARSET\n",
- ansi_charset, symbol_charset, russian_charset,
- *font_name ? font_name : "<empty>");
ok(efd.total > 0, "no fonts enumerated: %s DEFAULT_CHARSET\n", font_name);
for (i = 0; i < efd.total; i++)
{
@@ -3079,9 +3028,6 @@ static void test_EnumFontFamilies(const char *font_name, INT font_charset)
EnumFontFamiliesExA(hdc, &lf, arial_enum_proc, (LPARAM)&efd, 0);
ok(ret, "EnumFontFamiliesEx error %u\n", GetLastError());
get_charset_stats(&efd, &ansi_charset, &symbol_charset, &russian_charset);
- trace("enumerated ansi %d, symbol %d, russian %d fonts for %s SYMBOL_CHARSET\n",
- ansi_charset, symbol_charset, russian_charset,
- *font_name ? font_name : "<empty>");
if (*font_name && font_charset == ANSI_CHARSET)
ok(efd.total == 0, "no fonts should be enumerated: %s SYMBOL_CHARSET\n", font_name);
else
@@ -3200,7 +3146,6 @@ static void test_EnumFontFamiliesEx_default_charset(void)
EnumFontFamiliesExA(hdc, &enum_font, enum_font_data_proc, (LPARAM)&efd, 0);
ReleaseDC(0, hdc);
- trace("'%s' has %d charsets.\n", target.lfFaceName, efd.total);
if (efd.total < 2)
ok(0, "EnumFontFamilies is broken. Expected >= 2, got %d.\n", efd.total);
else
@@ -3504,7 +3449,7 @@ static BOOL get_first_last_from_cmap(HDC hdc, DWORD *first, DWORD *last, cmap_ty
r = get_first_last_from_cmap4(cmap, first, last, size);
break;
default:
- trace("unhandled cmap format %d\n", format);
+ skip("unhandled cmap format %d\n", format);
break;
}
@@ -3746,17 +3691,17 @@ static BOOL get_ttf_nametable_entry(HDC hdc, WORD name_id, WCHAR *out_buf, SIZE_
header->storage_offset = GET_BE_WORD(header->storage_offset);
if (header->format != 0)
{
- trace("got format %u\n", header->format);
+ skip("got format %u\n", header->format);
goto out;
}
if (header->number_of_record == 0 || sizeof(*header) + header->number_of_record * sizeof(*entry) > size)
{
- trace("number records out of range: %d\n", header->number_of_record);
+ skip("number records out of range: %d\n", header->number_of_record);
goto out;
}
if (header->storage_offset >= size)
{
- trace("storage_offset %u > size %u\n", header->storage_offset, size);
+ skip("storage_offset %u > size %u\n", header->storage_offset, size);
goto out;
}
@@ -3776,12 +3721,12 @@ static BOOL get_ttf_nametable_entry(HDC hdc, WORD name_id, WCHAR *out_buf, SIZE_
length = GET_BE_WORD(entry[best_index].length);
if (offset + length > size)
{
- trace("entry %d is out of range\n", best_index);
+ skip("entry %d is out of range\n", best_index);
goto out;
}
if (length >= out_size)
{
- trace("buffer too small for entry %d\n", best_index);
+ skip("buffer too small for entry %d\n", best_index);
goto out;
}
@@ -4041,7 +3986,6 @@ static void test_GetTextMetrics(void)
lf.lfCharSet = DEFAULT_CHARSET;
enumed = 0;
EnumFontFamiliesExA(hdc, &lf, enum_truetype_font_proc, (LPARAM)&enumed, 0);
- trace("Tested metrics of %d truetype fonts\n", enumed);
ReleaseDC(0, hdc);
}
@@ -4821,8 +4765,6 @@ static void test_GetGlyphOutline(void)
ok(ret, "GetTextMetrics error %u\n", GetLastError());
ret = GetGlyphOutlineA(hdc, c[i].a, GGO_METRICS, &gm2, 0, NULL, &mat);
ok(ret != GDI_ERROR, "GetGlyphOutlineA error %u\n", GetLastError());
- trace("Tests with height=%d,avg=%d,full=%d,face=%s,charset=%d\n",
- -lf.lfHeight, tm.tmAveCharWidth, gm2.gmCellIncX, lf.lfFaceName, lf.lfCharSet);
ok(gm2.gmCellIncX == tm.tmAveCharWidth * 2 || broken(gm2.gmCellIncX == -lf.lfHeight),
"expected %d, got %d (%s:%d)\n",
tm.tmAveCharWidth * 2, gm2.gmCellIncX, lf.lfFaceName, lf.lfCharSet);
@@ -4870,7 +4812,7 @@ static void test_GetTextMetrics2(const char *fontname, int font_height)
HDC hdc;
TEXTMETRICA tm;
BOOL ret;
- int ave_width, height, width, ratio, scale;
+ int ave_width, height, width, ratio;
if (!is_truetype_font_installed( fontname)) {
skip("%s is not installed\n", fontname);
@@ -4892,8 +4834,6 @@ static void test_GetTextMetrics2(const char *fontname, int font_height)
SelectObject( hdc, of);
DeleteObject( hf);
- trace("height %d, ave width %d\n", height, ave_width);
-
for (width = ave_width * 2; /* nothing*/; width += ave_width)
{
hf = CreateFontA(height, width, 0, 0, FW_REGULAR, FALSE, FALSE, FALSE,
@@ -4913,10 +4853,6 @@ static void test_GetTextMetrics2(const char *fontname, int font_height)
DeleteDC(hdc);
ratio = width / height;
- scale = width / ave_width;
-
- trace("max width/height ratio (%d / %d) %d, max width scale (%d / %d) %d\n",
- width, height, ratio, width, ave_width, scale);
ok(ratio >= 90 && ratio <= 110, "expected width/height ratio 90-110, got %d\n", ratio);
}
@@ -6245,7 +6181,6 @@ static void test_vertical_font(void)
skip("%s is not installed\n", face);
continue;
}
- trace("Testing %s...\n", face);
check_vertical_metrics(&face[1]);
}
--
2.25.0