Author: akhaldi
Date: Fri Aug 19 09:29:03 2016
New Revision: 72342
URL:
http://svn.reactos.org/svn/reactos?rev=72342&view=rev
Log:
[GDIPLUS_WINETEST] Sync with Wine Staging 1.9.16. CORE-11866
Modified:
trunk/rostests/winetests/gdiplus/font.c
trunk/rostests/winetests/gdiplus/graphics.c
trunk/rostests/winetests/gdiplus/image.c
trunk/rostests/winetests/gdiplus/metafile.c
trunk/rostests/winetests/gdiplus/region.c
Modified: trunk/rostests/winetests/gdiplus/font.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/gdiplus/font.c?…
==============================================================================
--- trunk/rostests/winetests/gdiplus/font.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/gdiplus/font.c [iso-8859-1] Fri Aug 19 09:29:03 2016
@@ -81,7 +81,7 @@
stat = GdipDeleteFontFamily(fontfamily2);
expect(Ok, stat);
- /* Test to see if returned size is based on unit (its not) */
+ /* Test to see if returned size is based on unit (it's not) */
GdipGetFontSize(font, &size);
ok (size == 12, "Expected 12, got %f\n", size);
GdipDeleteFont(font);
@@ -788,6 +788,7 @@
expect(Ok, status);
strcpy(fallback_font,lf.lfFaceName);
trace("fallback font %s\n", fallback_font);
+ GdipDeleteFont(font);
lstrcpyA(lf.lfFaceName, "ThisFontShouldNotExist");
status = GdipCreateFontFromLogfontA(hdc, &lf, &font);
Modified: trunk/rostests/winetests/gdiplus/graphics.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/gdiplus/graphic…
==============================================================================
--- trunk/rostests/winetests/gdiplus/graphics.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/gdiplus/graphics.c [iso-8859-1] Fri Aug 19 09:29:03 2016
@@ -2317,6 +2317,29 @@
"Expected clip bounds (%d, %d, %d, %d) to be the size of "
"the visible clipping rect (%0.f, %0.f, %0.f, %0.f)\n",
recti.X, recti.Y, recti.Width, recti.Height,
+ exp.X, exp.Y, exp.Width, exp.Height);
+
+ /* window bounds with transform applied */
+ status = GdipResetClip(graphics);
+ expect(Ok, status);
+
+ status = GdipScaleWorldTransform(graphics, 0.5, 0.5, MatrixOrderPrepend);
+ expect(Ok, status);
+
+ exp.X = window.X * 2.0;
+ exp.Y = window.Y * 2.0;
+ exp.Width = window.Width * 2.0;
+ exp.Height = window.Height * 2.0;
+
+ status = GdipGetVisibleClipBounds(graphics, &rectf);
+ expect(Ok, status);
+ ok(rectf.X == exp.X &&
+ rectf.Y == exp.Y &&
+ rectf.Width == exp.Width &&
+ rectf.Height == exp.Height,
+ "Expected clip bounds (%0.f, %0.f, %0.f, %0.f) to be "
+ "twice the window size (%0.f, %0.f, %0.f, %0.f)\n",
+ rectf.X, rectf.Y, rectf.Width, rectf.Height,
exp.X, exp.Y, exp.Width, exp.Height);
GdipDeleteGraphics(graphics);
@@ -3746,10 +3769,8 @@
expected_width = base_cx * pt.Y;
expected_height = base_cy * pt.Y;
- if (td[i].unit == UnitDisplay || td[i].unit == UnitPixel)
+ todo_wine_if(td[i].unit != UnitDisplay && td[i].unit != UnitPixel)
ok(fabs(expected_width - bounds.Width) <= 0.001, "%u: expected %f,
got %f\n", i, expected_width, bounds.Width);
- else
- todo_wine ok(fabs(expected_width - bounds.Width) <= 0.001, "%u:
expected %f, got %f\n", i, expected_width, bounds.Width);
ok(fabs(expected_height - bounds.Height) <= 0.001, "%u: expected %f, got
%f\n", i, expected_height, bounds.Height);
GdipDeleteGraphics(graphics);
@@ -4846,7 +4867,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 45 && rc.top == 20 && rc.right == 95 &&
rc.bottom == 45,
- "expected 45,20-95,45, got %d,%d-%d,%d\n", rc.left, rc.top, rc.right,
rc.bottom);
+ "expected 45,20-95,45, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
@@ -4854,7 +4875,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -4871,7 +4892,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region100x100, graphics, &hrgn);
@@ -4879,7 +4900,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 210 && rc.top == 420 && rc.right == 410 &&
rc.bottom == 820,
- "expected 210,420-410,820, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 210,420-410,820, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 210.0;
@@ -4918,7 +4939,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 45 && rc.top == 20 && rc.right == 95 &&
rc.bottom == 45,
- "expected 45,20-95,45, got %d,%d-%d,%d\n", rc.left, rc.top, rc.right,
rc.bottom);
+ "expected 45,20-95,45, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
@@ -4926,7 +4947,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -4943,7 +4964,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region100x100, graphics, &hrgn);
@@ -4951,7 +4972,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 210 && rc.top == 420 && rc.right == 410 &&
rc.bottom == 820,
- "expected 210,420-410,820, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 210,420-410,820, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 210.0;
@@ -4999,7 +5020,7 @@
/* rounding under Wine is slightly different */
(rc.left == 14 && rc.top == 4 && rc.right == 33 &&
rc.bottom == 14) /* Wine */ ||
broken(rc.left == 45 && rc.top == 20 && rc.right == 95 &&
rc.bottom == 45) /* before Win7 */,
- "expected 14,5-33,14, got %d,%d-%d,%d\n", rc.left, rc.top, rc.right,
rc.bottom);
+ "expected 14,5-33,14, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
@@ -5008,7 +5029,7 @@
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok((rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200) ||
broken(rc.left == 267 && rc.top == 267 && rc.right == 534
&& rc.bottom == 534) /* before Win7 */,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -5026,7 +5047,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region100x100, graphics, &hrgn);
@@ -5036,7 +5057,7 @@
ok((rc.left == 560 && rc.top == 1120 && rc.right == 1094 &&
rc.bottom == 2187) ||
/* rounding under Wine is slightly different */
(rc.left == 560 && rc.top == 1120 && rc.right == 1093 &&
rc.bottom == 2187) /* Wine */,
- "expected 560,1120-1094,2187, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 560,1120-1094,2187, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 560.0;
@@ -5073,7 +5094,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 210 && rc.top == 420 && rc.right == 410 &&
rc.bottom == 820,
- "expected 210,420-410,820, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 210,420-410,820, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region100x100, graphics, &hrgn);
@@ -5083,7 +5104,7 @@
ok((rc.left == 1147 && rc.top == 4534 && rc.right == 2214 &&
rc.bottom == 8800) ||
/* rounding under Wine is slightly different */
(rc.left == 1147 && rc.top == 4533 && rc.right == 2213 &&
rc.bottom == 8800) /* Wine */,
- "expected 1147,4534-2214,8800, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 1147,4534-2214,8800, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 1147.0;
@@ -5143,7 +5164,7 @@
ok((rc.left == 22 && rc.top == -6 && rc.right == 46 &&
rc.bottom == 7) ||
/* rounding under Wine is slightly different */
(rc.left == 21 && rc.top == -5 && rc.right == 46 &&
rc.bottom == 7) /* Wine */,
- "expected (22,-6)-(46,7), got (%d,%d)-(%d,%d)\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected (22,-6)-(46,7), got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
@@ -5151,7 +5172,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -5178,7 +5199,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 210 && rc.top == 420 && rc.right == 410 &&
rc.bottom == 820,
- "expected 210,420-410,820, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 210,420-410,820, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region100x100, graphics, &hrgn);
@@ -5188,7 +5209,7 @@
ok((rc.left == -3406 && rc.top == 4500 && rc.right == -350 &&
rc.bottom == 8728) ||
/* rounding under Wine is slightly different */
(rc.left == -3407 && rc.top == 4500 && rc.right == -350 &&
rc.bottom == 8728) /* Wine */,
- "expected (-3406,4500)-(-350,8728), got (%d,%d)-(%d,%d)\n", rc.left,
rc.top, rc.right, rc.bottom);
+ "expected (-3406,4500)-(-350,8728), got %s\n",
wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = -3406.0;
@@ -5246,7 +5267,7 @@
ok((rc.left == -27 && rc.top == 8 && rc.right == -2 &&
rc.bottom == 21) ||
/* rounding under Wine is slightly different */
(rc.left == -28 && rc.top == 9 && rc.right == -2 &&
rc.bottom == 21) /* Wine */,
- "expected (-27,8)-(-2,21), got (%d,%d)-(%d,%d)\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected (-27,8)-(-2,21), got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
@@ -5254,7 +5275,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -5281,7 +5302,7 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 210 && rc.top == 420 && rc.right == 410 &&
rc.bottom == 820,
- "expected 210,420-410,820, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 210,420-410,820, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region100x100, graphics, &hrgn);
@@ -5291,7 +5312,7 @@
ok((rc.left == 4500 && rc.top == 351 && rc.right == 8728 &&
rc.bottom == 3407) ||
/* rounding under Wine is slightly different */
(rc.left == 4499 && rc.top == 351 && rc.right == 8728 &&
rc.bottom == 3407) /* Wine */,
- "expected (4500,351)-(8728,3407), got (%d,%d)-(%d,%d)\n", rc.left,
rc.top, rc.right, rc.bottom);
+ "expected (4500,351)-(8728,3407), got %s\n",
wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = -3406.0;
@@ -5363,14 +5384,14 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
expect(Ok, status);
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 9600 && rc.top == 9600 && rc.right == 19200 &&
rc.bottom == 19200,
- "expected 9600,9600-19200,19200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 9600,9600-19200,19200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 9600.0;
@@ -5394,7 +5415,7 @@
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok((rc.left == 7200 && rc.top == 7200 && rc.right == 14400 &&
rc.bottom == 14400) ||
broken(rc.left == 100 && rc.top == 100 && rc.right == 200
&& rc.bottom == 200) /* before Win7 */,
- "expected 7200,7200-14400,14400, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 7200,7200-14400,14400, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
expect(Ok, status);
@@ -5402,7 +5423,7 @@
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok((rc.left == 9600 && rc.top == 9600 && rc.right == 19200 &&
rc.bottom == 19200) ||
broken(rc.left == 134 && rc.top == 134 && rc.right == 267
&& rc.bottom == 267) /* before Win7 */,
- "expected 9600,9600-19200,19200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 9600,9600-19200,19200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 9600.0;
@@ -5445,7 +5466,7 @@
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok((rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200) ||
broken(rc.left == 2 && rc.top == 2 && rc.right == 3 &&
rc.bottom == 3) /* before Win7 */,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
expect(Ok, status);
@@ -5453,7 +5474,7 @@
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok((rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200) ||
broken(rc.left == 2 && rc.top == 2 && rc.right == 3 &&
rc.bottom == 3) /* before Win7 */,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -5483,7 +5504,7 @@
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok((rc.left == 75 && rc.top == 75 && rc.right == 150 &&
rc.bottom == 150) ||
broken(rc.left == 2 && rc.top == 2 && rc.right == 3 &&
rc.bottom == 3) /* before Win7 */,
- "expected 75,75-150,150, got %d,%d-%d,%d\n", rc.left, rc.top, rc.right,
rc.bottom);
+ "expected 75,75-150,150, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
expect(Ok, status);
@@ -5491,7 +5512,7 @@
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok((rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200) ||
broken(rc.left == 2 && rc.top == 2 && rc.right == 3 &&
rc.bottom == 3) /* before Win7 */,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -5526,14 +5547,14 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 65 && rc.top == 65 && rc.right == 140 &&
rc.bottom == 140,
- "expected 65,65-140,140, got %d,%d-%d,%d\n", rc.left, rc.top, rc.right,
rc.bottom);
+ "expected 65,65-140,140, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
expect(Ok, status);
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -5562,14 +5583,14 @@
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 300 && rc.top == 150 && rc.right == 600 &&
rc.bottom == 300,
- "expected 300,150-600,300, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 300,150-600,300, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
expect(Ok, status);
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -5594,7 +5615,7 @@
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok((rc.left == 150 && rc.top == 75 && rc.right == 300 &&
rc.bottom == 150) ||
broken(rc.left == 300 && rc.top == 150 && rc.right == 600
&& rc.bottom == 300) /* before Win7 */,
- "expected 150,75-300,150, got %d,%d-%d,%d\n", rc.left, rc.top, rc.right,
rc.bottom);
+ "expected 150,75-300,150, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
expect(Ok, status);
@@ -5602,7 +5623,7 @@
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok((rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200) ||
broken(rc.left == 200 && rc.top == 200 && rc.right == 400
&& rc.bottom == 400) /* before Win7 */,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -5643,14 +5664,14 @@
ok((rc.left == 54 && rc.top == -26 && rc.right == 107 &&
rc.bottom == 27) ||
/* rounding under Wine is slightly different */
(rc.left == 53 && rc.top == -26 && rc.right == 106 &&
rc.bottom == 27) /* Wine */,
- "expected 54,-26-107,27, got %d,%d-%d,%d\n", rc.left, rc.top, rc.right,
rc.bottom);
+ "expected 54,-26-107,27, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
expect(Ok, status);
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
@@ -5689,14 +5710,14 @@
ok((rc.left == -26 && rc.top == 54 && rc.right == 27 &&
rc.bottom == 107) ||
/* rounding under Wine is slightly different */
(rc.left == -27 && rc.top == 54 && rc.right == 27 &&
rc.bottom == 106) /* Wine */,
- "expected -26,54-27,107, got %d,%d-%d,%d\n", rc.left, rc.top, rc.right,
rc.bottom);
+ "expected -26,54-27,107, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
status = GdipGetRegionHRgn(region, graphics, &hrgn);
expect(Ok, status);
ret = GetRgnBox(hrgn, &rc);
ok(ret == SIMPLEREGION, "expected SIMPLEREGION, got %d\n", ret);
ok(rc.left == 100 && rc.top == 100 && rc.right == 200 &&
rc.bottom == 200,
- "expected 100,100-200,200, got %d,%d-%d,%d\n", rc.left, rc.top,
rc.right, rc.bottom);
+ "expected 100,100-200,200, got %s\n", wine_dbgstr_rect(&rc));
DeleteObject(hrgn);
ptf[0].X = 100.0;
Modified: trunk/rostests/winetests/gdiplus/image.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/gdiplus/image.c…
==============================================================================
--- trunk/rostests/winetests/gdiplus/image.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/gdiplus/image.c [iso-8859-1] Fri Aug 19 09:29:03 2016
@@ -2,7 +2,7 @@
* Unit test suite for images
*
* Copyright (C) 2007 Google (Evan Stade)
- * Copyright (C) 2012 Dmitry Timoshkov
+ * Copyright (C) 2012,2016 Dmitry Timoshkov
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -3187,12 +3187,7 @@
status = GdipGetPropertyCount(image, &prop_count);
ok(status == Ok, "%u: GdipGetPropertyCount error %d\n", i, status);
- if (td[i].image_data == pngimage || td[i].image_data == jpgimage)
- todo_wine
- ok(td[i].prop_count == prop_count || td[i].prop_count2 == prop_count,
- " %u: expected property count %u or %u, got %u\n",
- i, td[i].prop_count, td[i].prop_count2, prop_count);
- else
+ todo_wine_if(td[i].image_data == pngimage || td[i].image_data == jpgimage)
ok(td[i].prop_count == prop_count || td[i].prop_count2 == prop_count,
" %u: expected property count %u or %u, got %u\n",
i, td[i].prop_count, td[i].prop_count2, prop_count);
@@ -4745,6 +4740,135 @@
}
}
+static void test_getadjustedpalette(void)
+{
+ ColorMap colormap;
+ GpImageAttributes *imageattributes;
+ ColorPalette *palette;
+ GpStatus stat;
+
+ stat = GdipCreateImageAttributes(&imageattributes);
+ expect(Ok, stat);
+
+ colormap.oldColor.Argb = 0xffffff00;
+ colormap.newColor.Argb = 0xffff00ff;
+ stat = GdipSetImageAttributesRemapTable(imageattributes, ColorAdjustTypeBitmap,
+ TRUE, 1, &colormap);
+ expect(Ok, stat);
+
+ colormap.oldColor.Argb = 0xffffff80;
+ colormap.newColor.Argb = 0xffff80ff;
+ stat = GdipSetImageAttributesRemapTable(imageattributes, ColorAdjustTypeDefault,
+ TRUE, 1, &colormap);
+ expect(Ok, stat);
+
+ palette = GdipAlloc(sizeof(*palette) + sizeof(ARGB) * 2);
+ palette->Count = 0;
+
+ stat = GdipGetImageAttributesAdjustedPalette(imageattributes, palette,
ColorAdjustTypeBitmap);
+ expect(InvalidParameter, stat);
+
+ palette->Count = 3;
+ palette->Entries[0] = 0xffffff00;
+ palette->Entries[1] = 0xffffff80;
+ palette->Entries[2] = 0xffffffff;
+
+ stat = GdipGetImageAttributesAdjustedPalette(imageattributes, palette,
ColorAdjustTypeBitmap);
+ expect(Ok, stat);
+ expect(0xffff00ff, palette->Entries[0]);
+ expect(0xffffff80, palette->Entries[1]);
+ expect(0xffffffff, palette->Entries[2]);
+
+ palette->Entries[0] = 0xffffff00;
+ palette->Entries[1] = 0xffffff80;
+ palette->Entries[2] = 0xffffffff;
+
+ stat = GdipGetImageAttributesAdjustedPalette(imageattributes, palette,
ColorAdjustTypeBrush);
+ expect(Ok, stat);
+ expect(0xffffff00, palette->Entries[0]);
+ expect(0xffff80ff, palette->Entries[1]);
+ expect(0xffffffff, palette->Entries[2]);
+
+ stat = GdipGetImageAttributesAdjustedPalette(NULL, palette, ColorAdjustTypeBitmap);
+ expect(InvalidParameter, stat);
+
+ stat = GdipGetImageAttributesAdjustedPalette(imageattributes, NULL,
ColorAdjustTypeBitmap);
+ expect(InvalidParameter, stat);
+
+ stat = GdipGetImageAttributesAdjustedPalette(imageattributes, palette, -1);
+ expect(InvalidParameter, stat);
+
+ stat = GdipGetImageAttributesAdjustedPalette(imageattributes, palette,
ColorAdjustTypeDefault);
+ expect(InvalidParameter, stat);
+
+ GdipFree(palette);
+ GdipDisposeImageAttributes(imageattributes);
+}
+
+/* RGB 24 bpp 1x1 pixel PNG image */
+static const char png_1x1_data[] = {
+ 0x89,'P','N','G',0x0d,0x0a,0x1a,0x0a,
+
0x00,0x00,0x00,0x0d,'I','H','D','R',0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x08,0x02,0x00,0x00,0x00,0x90,0x77,0x53,0xde,
+
0x00,0x00,0x00,0x0c,'I','D','A','T',0x08,0xd7,0x63,0xf8,0xff,0xff,0x3f,0x00,0x05,0xfe,0x02,0xfe,0xdc,0xcc,0x59,0xe7,
+
0x00,0x00,0x00,0x00,'I','E','N','D',0xae,0x42,0x60,0x82
+};
+
+static void test_png_color_formats(void)
+{
+ static const struct
+ {
+ char bit_depth, color_type;
+ PixelFormat format;
+ UINT flags;
+ } td[] =
+ {
+ /* 2 - PNG_COLOR_TYPE_RGB */
+ { 8, 2, PixelFormat24bppRGB, ImageFlagsColorSpaceRGB },
+ /* 0 - PNG_COLOR_TYPE_GRAY */
+ { 1, 0, PixelFormat1bppIndexed, ImageFlagsColorSpaceRGB },
+ { 2, 0, PixelFormat32bppARGB, ImageFlagsColorSpaceGRAY },
+ { 4, 0, PixelFormat32bppARGB, ImageFlagsColorSpaceGRAY },
+ { 8, 0, PixelFormat32bppARGB, ImageFlagsColorSpaceGRAY },
+ { 16, 0, PixelFormat32bppARGB, ImageFlagsColorSpaceGRAY },
+ };
+ BYTE buf[sizeof(png_1x1_data)];
+ GpStatus status;
+ GpImage *image;
+ ImageType type;
+ PixelFormat format;
+ UINT flags;
+ int i;
+
+ for (i = 0; i < sizeof(td)/sizeof(td[0]); i++)
+ {
+ memcpy(buf, png_1x1_data, sizeof(png_1x1_data));
+ buf[24] = td[i].bit_depth;
+ buf[25] = td[i].color_type;
+
+ image = load_image(buf, sizeof(buf));
+ ok(image != NULL, "%d: failed to load image data\n", i);
+ if (!image) continue;
+
+ status = GdipGetImageType(image, &type);
+ ok(status == Ok, "%u: GdipGetImageType error %d\n", i, status);
+ ok(type == ImageTypeBitmap, "%d: wrong image type %d\n", i, type);
+
+ status = GdipGetImagePixelFormat(image, &format);
+ expect(Ok, status);
+ ok(format == td[i].format ||
+ broken(td[i].bit_depth == 1 && td[i].color_type == 0 && format
== PixelFormat32bppARGB), /* XP */
+ "%d: expected %#x, got %#x\n", i, td[i].format, format);
+
+ status = GdipGetImageFlags(image, &flags);
+ expect(Ok, status);
+ ok((flags & td[i].flags) == td[i].flags ||
+ broken(td[i].bit_depth == 1 && td[i].color_type == 0 && (flags
& ImageFlagsColorSpaceGRAY)), /* XP */
+ "%d: expected %#x, got %#x\n", i, td[i].flags, flags);
+
+ GdipDisposeImage(image);
+ }
+}
+
START_TEST(image)
{
struct GdiplusStartupInput gdiplusStartupInput;
@@ -4757,6 +4881,7 @@
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
+ test_png_color_formats();
test_supported_encoders();
test_CloneBitmapArea();
test_ARGB_conversion();
@@ -4802,6 +4927,7 @@
test_colorkey();
test_dispose();
test_createeffect();
+ test_getadjustedpalette();
GdiplusShutdown(gdiplusToken);
}
Modified: trunk/rostests/winetests/gdiplus/metafile.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/gdiplus/metafil…
==============================================================================
--- trunk/rostests/winetests/gdiplus/metafile.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/gdiplus/metafile.c [iso-8859-1] Fri Aug 19 09:29:03 2016
@@ -867,6 +867,95 @@
expect(Ok, stat);
}
+static const emfplus_record clear_emf_records[] = {
+ {0, EMR_HEADER},
+ {0, EmfPlusRecordTypeHeader},
+ {0, EmfPlusRecordTypeClear},
+ {1, EMR_SAVEDC},
+ {1, EMR_SETICMMODE},
+ {1, EMR_BITBLT},
+ {1, EMR_RESTOREDC},
+ {0, EmfPlusRecordTypeEndOfFile},
+ {0, EMR_EOF},
+ {0}
+};
+
+static void test_clear(void)
+{
+ GpStatus stat;
+ GpMetafile *metafile;
+ GpGraphics *graphics;
+ HDC hdc;
+ HENHMETAFILE hemf;
+ static const GpRectF frame = {0.0, 0.0, 100.0, 100.0};
+ static const GpPointF dst_points[3] = {{10.0,10.0},{20.0,10.0},{10.0,20.0}};
+ static const WCHAR description[] =
{'w','i','n','e','t','e','s','t',0};
+ GpBitmap *bitmap;
+ ARGB color;
+
+ hdc = CreateCompatibleDC(0);
+
+ stat = GdipRecordMetafile(hdc, EmfTypeEmfPlusOnly, &frame,
MetafileFrameUnitPixel, description, &metafile);
+ expect(Ok, stat);
+
+ DeleteDC(hdc);
+
+ if (stat != Ok)
+ return;
+
+ stat = GdipGetHemfFromMetafile(metafile, &hemf);
+ expect(InvalidParameter, stat);
+
+ stat = GdipGetImageGraphicsContext((GpImage*)metafile, &graphics);
+ expect(Ok, stat);
+
+ stat = GdipGraphicsClear(graphics, 0xffffff00);
+ expect(Ok, stat);
+
+ stat = GdipDeleteGraphics(graphics);
+ expect(Ok, stat);
+
+ save_metafile(metafile, "clear.emf");
+
+ stat = GdipCreateBitmapFromScan0(30, 30, 0, PixelFormat32bppRGB, NULL, &bitmap);
+ expect(Ok, stat);
+
+ stat = GdipGetImageGraphicsContext((GpImage*)bitmap, &graphics);
+ expect(Ok, stat);
+
+ stat = GdipDrawImagePointsRect(graphics, (GpImage*)metafile, dst_points, 3,
+ 0.0, 0.0, 100.0, 100.0, UnitPixel, NULL, NULL, NULL);
+ expect(Ok, stat);
+
+ stat = GdipBitmapGetPixel(bitmap, 5, 5, &color);
+ expect(Ok, stat);
+ expect(0xff000000, color);
+
+ stat = GdipBitmapGetPixel(bitmap, 15, 15, &color);
+ expect(Ok, stat);
+ expect(0xffffff00, color);
+
+ stat = GdipBitmapGetPixel(bitmap, 25, 25, &color);
+ expect(Ok, stat);
+ expect(0xff000000, color);
+
+ stat = GdipDeleteGraphics(graphics);
+ expect(Ok, stat);
+
+ stat = GdipDisposeImage((GpImage*)bitmap);
+ expect(Ok, stat);
+
+ stat = GdipGetHemfFromMetafile(metafile, &hemf);
+ expect(Ok, stat);
+
+ stat = GdipDisposeImage((GpImage*)metafile);
+ expect(Ok, stat);
+
+ check_emfplus(hemf, clear_emf_records, "clear emf");
+
+ DeleteEnhMetaFile(hemf);
+}
+
static void test_nullframerect(void) {
GpStatus stat;
GpMetafile *metafile;
@@ -893,8 +982,10 @@
expect(UnitPixel, unit);
expectf(0.0, bounds.X);
expectf(0.0, bounds.Y);
- expectf(1.0, bounds.Width);
- expectf(1.0, bounds.Height);
+ ok(bounds.Width == 1.0 || broken(bounds.Width == 0.0) /* xp sp1 */,
+ "expected 1.0, got %f\n", bounds.Width);
+ ok(bounds.Height == 1.0 || broken(bounds.Height == 0.0) /* xp sp1 */,
+ "expected 1.0, got %f\n", bounds.Height);
stat = GdipGetImageGraphicsContext((GpImage*)metafile, &graphics);
expect(Ok, stat);
@@ -913,8 +1004,10 @@
expect(UnitPixel, unit);
expectf(0.0, bounds.X);
expectf(0.0, bounds.Y);
- expectf(1.0, bounds.Width);
- expectf(1.0, bounds.Height);
+ ok(bounds.Width == 1.0 || broken(bounds.Width == 0.0) /* xp sp1 */,
+ "expected 1.0, got %f\n", bounds.Width);
+ ok(bounds.Height == 1.0 || broken(bounds.Height == 0.0) /* xp sp1 */,
+ "expected 1.0, got %f\n", bounds.Height);
stat = GdipDeleteGraphics(graphics);
expect(Ok, stat);
@@ -922,10 +1015,10 @@
stat = GdipGetImageBounds((GpImage*)metafile, &bounds, &unit);
expect(Ok, stat);
expect(UnitPixel, unit);
- todo_wine expectf_(25.0, bounds.X, 0.05);
- todo_wine expectf_(25.0, bounds.Y, 0.05);
- todo_wine expectf_(75.0, bounds.Width, 0.05);
- todo_wine expectf_(75.0, bounds.Height, 0.05);
+ expectf_(25.0, bounds.X, 0.05);
+ expectf_(25.0, bounds.Y, 0.05);
+ expectf_(75.0, bounds.Width, 0.05);
+ expectf_(75.0, bounds.Height, 0.05);
stat = GdipDisposeImage((GpImage*)metafile);
expect(Ok, stat);
@@ -1179,6 +1272,157 @@
expect(Ok, stat);
}
+static const emfplus_record worldtransform_records[] = {
+ {0, EMR_HEADER},
+ {0, EmfPlusRecordTypeHeader},
+ {0, EmfPlusRecordTypeFillRects},
+ {0, EmfPlusRecordTypeScaleWorldTransform},
+ {0, EmfPlusRecordTypeFillRects},
+ {0, EmfPlusRecordTypeResetWorldTransform},
+ {0, EmfPlusRecordTypeFillRects},
+ {0, EmfPlusRecordTypeEndOfFile},
+ {0, EMR_EOF},
+ {0}
+};
+
+static void test_worldtransform(void)
+{
+ GpStatus stat;
+ GpMetafile *metafile;
+ GpGraphics *graphics;
+ HDC hdc;
+ static const GpRectF frame = {0.0, 0.0, 5.0, 5.0};
+ static const GpPointF dst_points[3] = {{0.0,0.0},{100.0,0.0},{0.0,100.0}};
+ static const WCHAR description[] =
{'w','i','n','e','t','e','s','t',0};
+ GpBitmap *bitmap;
+ ARGB color;
+ GpBrush *brush;
+ GpMatrix *transform;
+ BOOL identity;
+ REAL elements[6];
+
+ hdc = CreateCompatibleDC(0);
+
+ stat = GdipRecordMetafile(hdc, EmfTypeEmfPlusOnly, &frame,
MetafileFrameUnitPixel, description, &metafile);
+ expect(Ok, stat);
+
+ DeleteDC(hdc);
+
+ if (stat != Ok)
+ return;
+
+ stat = GdipCreateMatrix(&transform);
+ expect(Ok, stat);
+
+ stat = GdipGetImageGraphicsContext((GpImage*)metafile, &graphics);
+ expect(Ok, stat);
+
+ /* initial transform */
+ stat = GdipGetWorldTransform(graphics, transform);
+ expect(Ok, stat);
+
+ stat = GdipIsMatrixIdentity(transform, &identity);
+ expect(Ok, stat);
+ expect(TRUE, identity);
+
+ stat = GdipCreateSolidFill((ARGB)0xff0000ff, (GpSolidFill**)&brush);
+ expect(Ok, stat);
+
+ stat = GdipFillRectangleI(graphics, brush, 0, 0, 1, 1);
+ expect(Ok, stat);
+
+ stat = GdipDeleteBrush(brush);
+ expect(Ok, stat);
+
+ /* scale transform */
+ stat = GdipScaleWorldTransform(graphics, 2.0, 4.0, MatrixOrderPrepend);
+ expect(Ok, stat);
+
+ stat = GdipGetWorldTransform(graphics, transform);
+ expect(Ok, stat);
+
+ stat = GdipGetMatrixElements(transform, elements);
+ expect(Ok, stat);
+ expectf(2.0, elements[0]);
+ expectf(0.0, elements[1]);
+ expectf(0.0, elements[2]);
+ expectf(4.0, elements[3]);
+ expectf(0.0, elements[4]);
+ expectf(0.0, elements[5]);
+
+ stat = GdipCreateSolidFill((ARGB)0xff00ff00, (GpSolidFill**)&brush);
+ expect(Ok, stat);
+
+ stat = GdipFillRectangle(graphics, brush, 0.5, 0.5, 0.5, 0.25);
+ expect(Ok, stat);
+
+ stat = GdipDeleteBrush(brush);
+ expect(Ok, stat);
+
+ /* reset transform */
+ stat = GdipResetWorldTransform(graphics);
+ expect(Ok, stat);
+
+ stat = GdipGetWorldTransform(graphics, transform);
+ expect(Ok, stat);
+
+ stat = GdipIsMatrixIdentity(transform, &identity);
+ expect(Ok, stat);
+ expect(TRUE, identity);
+
+ stat = GdipCreateSolidFill((ARGB)0xff00ffff, (GpSolidFill**)&brush);
+ expect(Ok, stat);
+
+ stat = GdipFillRectangle(graphics, brush, 1.0, 0.0, 1.0, 1.0);
+ expect(Ok, stat);
+
+ stat = GdipDeleteBrush(brush);
+ expect(Ok, stat);
+
+ stat = GdipDeleteMatrix(transform);
+ expect(Ok, stat);
+
+ stat = GdipDeleteGraphics(graphics);
+ expect(Ok, stat);
+
+ check_metafile(metafile, worldtransform_records, "worldtransform metafile",
dst_points, &frame, UnitPixel);
+
+ save_metafile(metafile, "worldtransform.emf");
+
+ stat = GdipCreateBitmapFromScan0(100, 100, 0, PixelFormat32bppARGB, NULL,
&bitmap);
+ expect(Ok, stat);
+
+ stat = GdipGetImageGraphicsContext((GpImage*)bitmap, &graphics);
+ expect(Ok, stat);
+
+ play_metafile(metafile, graphics, worldtransform_records, "worldtransform
playback", dst_points, &frame, UnitPixel);
+
+ stat = GdipBitmapGetPixel(bitmap, 80, 80, &color);
+ expect(Ok, stat);
+ expect(0, color);
+
+ stat = GdipBitmapGetPixel(bitmap, 10, 10, &color);
+ expect(Ok, stat);
+ expect(0xff0000ff, color);
+
+ stat = GdipBitmapGetPixel(bitmap, 30, 50, &color);
+ expect(Ok, stat);
+ expect(0xff00ff00, color);
+
+ stat = GdipBitmapGetPixel(bitmap, 30, 10, &color);
+ expect(Ok, stat);
+ expect(0xff00ffff, color);
+
+ stat = GdipDeleteGraphics(graphics);
+ expect(Ok, stat);
+
+ stat = GdipDisposeImage((GpImage*)bitmap);
+ expect(Ok, stat);
+
+ stat = GdipDisposeImage((GpImage*)metafile);
+ expect(Ok, stat);
+}
+
static void test_converttoemfplus(void)
{
GpStatus (WINAPI *pGdipConvertToEmfPlus)( const GpGraphics *graphics, GpMetafile
*metafile, BOOL *succ,
@@ -1284,8 +1528,10 @@
expect(UnitPixel, unit);
expectf(0.0, bounds.X);
expectf(0.0, bounds.Y);
- expectf(1.0, bounds.Width);
- expectf(1.0, bounds.Height);
+ ok(bounds.Width == 1.0 || broken(bounds.Width == 0.0) /* xp sp1 */,
+ "expected 1.0, got %f\n", bounds.Width);
+ ok(bounds.Height == 1.0 || broken(bounds.Height == 0.0) /* xp sp1 */,
+ "expected 1.0, got %f\n", bounds.Height);
stat = GdipGetImageGraphicsContext((GpImage*)metafile, &graphics);
expect(Ok, stat);
@@ -1295,8 +1541,10 @@
expect(UnitPixel, unit);
expectf(0.0, bounds.X);
expectf(0.0, bounds.Y);
- expectf(1.0, bounds.Width);
- expectf(1.0, bounds.Height);
+ ok(bounds.Width == 1.0 || broken(bounds.Width == 0.0) /* xp sp1 */,
+ "expected 1.0, got %f\n", bounds.Width);
+ ok(bounds.Height == 1.0 || broken(bounds.Height == 0.0) /* xp sp1 */,
+ "expected 1.0, got %f\n", bounds.Height);
stat = GdipDeleteGraphics(graphics);
expect(Ok, stat);
@@ -1342,8 +1590,10 @@
test_getdc();
test_emfonly();
test_fillrect();
+ test_clear();
test_nullframerect();
test_pagetransform();
+ test_worldtransform();
test_converttoemfplus();
test_frameunit();
Modified: trunk/rostests/winetests/gdiplus/region.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/gdiplus/region.…
==============================================================================
--- trunk/rostests/winetests/gdiplus/region.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/gdiplus/region.c [iso-8859-1] Fri Aug 19 09:29:03 2016
@@ -76,18 +76,16 @@
else
ok(ret == sizeof(rgn.data.rdh) + sizeof(RECT), "expected sizeof(rgn), got
%u\n", ret);
- trace("size %u, type %u, count %u, rgn size %u, bound (%d,%d-%d,%d)\n",
+ trace("size %u, type %u, count %u, rgn size %u, bound %s\n",
rgn.data.rdh.dwSize, rgn.data.rdh.iType,
rgn.data.rdh.nCount, rgn.data.rdh.nRgnSize,
- rgn.data.rdh.rcBound.left, rgn.data.rdh.rcBound.top,
- rgn.data.rdh.rcBound.right, rgn.data.rdh.rcBound.bottom);
+ wine_dbgstr_rect(&rgn.data.rdh.rcBound));
if (rgn.data.rdh.nCount != 0)
{
rect = (const RECT *)rgn.data.Buffer;
- trace("rect (%d,%d-%d,%d)\n", rect->left, rect->top,
rect->right, rect->bottom);
- ok(EqualRect(rect, rc), "expected (%d,%d)-(%d,%d), got
(%d,%d)-(%d,%d)\n",
- rc->left, rc->top, rc->right, rc->bottom,
- rect->left, rect->top, rect->right, rect->bottom);
+ trace("rect %s\n", wine_dbgstr_rect(rect));
+ ok(EqualRect(rect, rc), "expected %s, got %s\n",
+ wine_dbgstr_rect(rc), wine_dbgstr_rect(rect));
}
ok(rgn.data.rdh.dwSize == sizeof(rgn.data.rdh), "expected sizeof(rdh), got
%u\n", rgn.data.rdh.dwSize);
@@ -102,9 +100,8 @@
ok(rgn.data.rdh.nCount == 1, "expected 1, got %u\n",
rgn.data.rdh.nCount);
ok(rgn.data.rdh.nRgnSize == sizeof(RECT), "expected sizeof(RECT), got
%u\n", rgn.data.rdh.nRgnSize);
}
- ok(EqualRect(&rgn.data.rdh.rcBound, rc), "expected (%d,%d)-(%d,%d), got
(%d,%d)-(%d,%d)\n",
- rc->left, rc->top, rc->right, rc->bottom,
- rgn.data.rdh.rcBound.left, rgn.data.rdh.rcBound.top, rgn.data.rdh.rcBound.right,
rgn.data.rdh.rcBound.bottom);
+ ok(EqualRect(&rgn.data.rdh.rcBound, rc), "expected %s, got %s\n",
+ wine_dbgstr_rect(rc), wine_dbgstr_rect(&rgn.data.rdh.rcBound));
}
static void test_region_data(DWORD *data, UINT size, INT line)