+static void test_SegoeUI(void) +{
- HRESULT hr;
 - IDWriteFactory2 *factory;
 - IDWriteFontCollection *collection;
 - IDWriteFontFamily *family;
 - IDWriteFont *font;
 - UINT32 index, count, i;
 - WCHAR name[256];
 - BOOL exists, found;
 - hr = DWriteCreateFactory(DWRITE_FACTORY_TYPE_SHARED,
 &IID_IDWriteFactory2, (IUnknown **)&factory);
- if (hr != S_OK)
 - {
 win_skip("IDWriteFactory2 is not supported\n");return;- }
 - hr = IDWriteFactory2_GetSystemFontCollection(factory, &collection,
 FALSE);
- ok(hr == S_OK, "got %#x\n", hr);
 - hr = IDWriteFontCollection_FindFamilyName(collection, L"Segoe UI",
 &index, &exists);
- ok(hr == S_OK, "got %#x\n", hr);
 - if (!exists)
 - {
 skip("Segoe UI is not installed\n");IDWriteFontCollection_Release(collection);IDWriteFactory2_Release(factory);return;- }
 - ok(index != UINT_MAX && exists, "Segoe UI was not found\n");
 - hr = IDWriteFontCollection_GetFontFamily(collection, index, &family);
 - ok(hr == S_OK, "got %#x\n", hr);
 - count = IDWriteFontFamily_GetFontCount(family);
 - trace("family Segoe UI has %u fonts\n", count);
 - found = FALSE;
 - for (i = 0; i < count; i++)
 - {
 hr = IDWriteFontFamily_GetFont(family, i, &font);ok(hr == S_OK, "got %#x\n", hr);get_font_name(font, name, ARRAY_SIZE(name));if (!wcscmp(name, L"Segoe UI Symbol"))found = TRUE;hr = IDWriteFont_HasCharacter(font, 0x25d4, &exists);ok(hr == S_OK, "got %#x\n", hr);ok(!exists, "%u: %s has character 0x25d4\n", i,wine_dbgstr_w(name));
IDWriteFont_Release(font);- }
 - ok(!found, "Segoe UI Symbol should not be part of Segoe UI family\n");
 - IDWriteFontFamily_Release(family);
 - IDWriteFontCollection_Release(collection);
 - IDWriteFactory2_Release(factory);
 +}
All this does is checking if font is installed, and we know it is installed on all current Windows versions, it's not some directwrite functionality. Second patch will already trigger a todo case when font is installed in Wine.