Module: wine Branch: master Commit: b58528fa495809c6c24dbef74b366359eff39d4d URL: http://source.winehq.org/git/wine.git/?a=commit;h=b58528fa495809c6c24dbef74b...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Mon Mar 16 10:22:21 2015 +0300
dwrite/tests: Another test for cluster metrics and inline objects.
---
dlls/dwrite/tests/layout.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)
diff --git a/dlls/dwrite/tests/layout.c b/dlls/dwrite/tests/layout.c index 5b15c37..bbfc7bc 100644 --- a/dlls/dwrite/tests/layout.c +++ b/dlls/dwrite/tests/layout.c @@ -992,6 +992,8 @@ static void test_typography(void) static void test_GetClusterMetrics(void) { static const WCHAR strW[] = {'a','b','c','d',0}; + DWRITE_INLINE_OBJECT_METRICS inline_metrics; + DWRITE_CLUSTER_METRICS metrics; IDWriteInlineObject *trimm; IDWriteTextFormat *format; IDWriteTextLayout *layout; @@ -1029,6 +1031,20 @@ static void test_GetClusterMetrics(void) todo_wine ok(count == 3, "got %u\n", count);
+ count = 0; + memset(&metrics, 0, sizeof(metrics)); + hr = IDWriteTextLayout_GetClusterMetrics(layout, &metrics, 1, &count); + ok(hr == E_NOT_SUFFICIENT_BUFFER, "got 0x%08x\n", hr); +todo_wine + ok(count == 3, "got %u\n", count); + ok(metrics.length == 2, "got %u\n", metrics.length); + + hr = IDWriteInlineObject_GetMetrics(trimm, &inline_metrics); +todo_wine { + ok(hr == S_OK, "got 0x%08x\n", hr); + ok(inline_metrics.width == metrics.width, "got %.2f, expected %.2f\n", inline_metrics.width, + metrics.width); +} IDWriteInlineObject_Release(trimm); IDWriteTextLayout_Release(layout); IDWriteTextFormat_Release(format);