Evan Stade : gdiplus: Added GdipAddPathPath test.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Jul 13 08:30:19 CDT 2007


Module: wine
Branch: master
Commit: 44691eefb452e5fdec54f87ca98413f9c90b3fc6
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=44691eefb452e5fdec54f87ca98413f9c90b3fc6

Author: Evan Stade <estade at gmail.com>
Date:   Thu Jul 12 19:43:19 2007 -0700

gdiplus: Added GdipAddPathPath test.

---

 dlls/gdiplus/tests/graphicspath.c |   51 +++++++++++++++++++++++++++++++++++++
 1 files changed, 51 insertions(+), 0 deletions(-)

diff --git a/dlls/gdiplus/tests/graphicspath.c b/dlls/gdiplus/tests/graphicspath.c
index 7ee2cc3..729971e 100644
--- a/dlls/gdiplus/tests/graphicspath.c
+++ b/dlls/gdiplus/tests/graphicspath.c
@@ -383,6 +383,56 @@ static void test_worldbounds(void)
     expectf(945.0, bounds.Height);
 }
 
+static path_test_t pathpath_path[] = {
+    {600.00, 450.00, PathPointTypeStart, 0, 0}, /*0*/
+    {600.00, 643.30, PathPointTypeBezier, 0, 0}, /*1*/
+    {488.07, 800.00, PathPointTypeBezier, 0, 0}, /*2*/
+    {350.00, 800.00, PathPointTypeBezier, 0, 0}, /*3*/
+    {319.61, 797.40, PathPointTypeStart, 0, 0}, /*4*/
+    {182.56, 773.90, PathPointTypeBezier, 0, 0}, /*5*/
+    {85.07, 599.31, PathPointTypeBezier, 0, 0}, /*6*/
+    {101.85, 407.45, PathPointTypeBezier, 0, 0}, /*7*/
+    {102.54, 399.66, PathPointTypeBezier, 0, 0}, /*8*/
+    {103.40, 391.91, PathPointTypeBezier, 0, 0}, /*9*/
+    {104.46, 384.21, PathPointTypeBezier, 0, 0}, /*10*/
+    {409.92, 110.20, PathPointTypeLine, 0, 0}, /*11*/
+    {543.96, 156.53, PathPointTypeBezier, 0, 0}, /*12*/
+    {625.80, 346.22, PathPointTypeBezier, 0, 0}, /*13*/
+    {592.71, 533.88, PathPointTypeBezier, 0, 0}, /*14*/
+    {592.47, 535.28, PathPointTypeBezier, 0, 0}, /*15*/
+    {592.22, 536.67, PathPointTypeBezier, 0, 0}, /*16*/
+    {591.96, 538.06, PathPointTypeBezier, 0, 0}, /*17*/
+    {319.61, 797.40, PathPointTypeLine, 0, 0}, /*18*/
+    {182.56, 773.90, PathPointTypeBezier, 0, 0}, /*19*/
+    {85.07, 599.31, PathPointTypeBezier, 0, 0}, /*20*/
+    {101.85, 407.45, PathPointTypeBezier, 0, 0}, /*21*/
+    {102.54, 399.66, PathPointTypeBezier, 0, 0}, /*22*/
+    {103.40, 391.91, PathPointTypeBezier, 0, 0}, /*23*/
+    {104.46, 384.21, PathPointTypeBezier, 0, 0} /*24*/
+    };
+
+static void test_pathpath(void)
+{
+    GpStatus status;
+    GpPath* path1, *path2;
+
+    GdipCreatePath(FillModeAlternate, &path2);
+    GdipAddPathArc(path2, 100.0, 100.0, 500.0, 700.0, 95.0, 100.0);
+
+    GdipCreatePath(FillModeAlternate, &path1);
+    GdipAddPathArc(path1, 100.0, 100.0, 500.0, 700.0, 0.0, 90.0);
+    status = GdipAddPathPath(path1, path2, FALSE);
+    expect(Ok, status);
+    GdipAddPathArc(path1, 100.0, 100.0, 500.0, 700.0, -80.0, 100.0);
+    status = GdipAddPathPath(path1, path2, TRUE);
+    expect(Ok, status);
+
+    ok_path(path1, pathpath_path, sizeof(pathpath_path)/sizeof(path_test_t), FALSE);
+
+    GdipDeletePath(path1);
+    GdipDeletePath(path2);
+}
+
 START_TEST(graphicspath)
 {
     struct GdiplusStartupInput gdiplusStartupInput;
@@ -399,6 +449,7 @@ START_TEST(graphicspath)
     test_line2();
     test_arc();
     test_worldbounds();
+    test_pathpath();
 
     GdiplusShutdown(gdiplusToken);
 }




More information about the wine-cvs mailing list