Module: wine
Branch: master
Commit: fec5117e9144f7c8b6204f447ddedd6de9735093
URL: http://source.winehq.org/git/wine.git/?a=commit;h=fec5117e9144f7c8b6204f447…
Author: Alexandre Julliard <julliard(a)winehq.org>
Date: Mon Jul 16 16:14:45 2007 +0200
server: Merge APC processing into the select request.
This is needed to return the correct value when one of the handles
being waited on is set to signaled state by the APC.
---
dlls/kernel32/tests/pipe.c | 5 +--
dlls/ntdll/sync.c | 69 +++++++++---------------
include/wine/server_protocol.h | 25 ++-------
server/protocol.def | 15 ++----
server/request.h | 2 -
server/thread.c | 114 +++++++++++++++++++++-------------------
server/trace.c | 38 +++++++------
7 files changed, 115 insertions(+), 153 deletions(-)
Diff: http://source.winehq.org/git/wine.git/?a=commitdiff;h=fec5117e9144f7c8b6204…
Module: wine
Branch: master
Commit: 05a7cef855331d8653ed528d88bfa26b50273ca9
URL: http://source.winehq.org/git/wine.git/?a=commit;h=05a7cef855331d8653ed528d8…
Author: Evan Stade <estade(a)gmail.com>
Date: Fri Jul 13 17:51:41 2007 -0700
gdiplus: Constructor tests for GpGraphics.
---
dlls/gdiplus/tests/Makefile.in | 3 +-
dlls/gdiplus/tests/graphics.c | 69 ++++++++++++++++++++++++++++++++++++++++
2 files changed, 71 insertions(+), 1 deletions(-)
diff --git a/dlls/gdiplus/tests/Makefile.in b/dlls/gdiplus/tests/Makefile.in
index 9eb9e51..421bd4e 100644
--- a/dlls/gdiplus/tests/Makefile.in
+++ b/dlls/gdiplus/tests/Makefile.in
@@ -3,10 +3,11 @@ TOPOBJDIR = ../../..
SRCDIR = @srcdir@
VPATH = @srcdir@
TESTDLL = gdiplus.dll
-IMPORTS = gdiplus kernel32
+IMPORTS = gdiplus user32 gdi32 kernel32
CTESTS = \
brush.c \
+ graphics.c \
graphicspath.c \
matrix.c \
pen.c
diff --git a/dlls/gdiplus/tests/graphics.c b/dlls/gdiplus/tests/graphics.c
new file mode 100644
index 0000000..93d419c
--- /dev/null
+++ b/dlls/gdiplus/tests/graphics.c
@@ -0,0 +1,69 @@
+/*
+ * Unit test suite for graphics objects
+ *
+ * Copyright (C) 2007 Google (Evan Stade)
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "windows.h"
+#include "gdiplus.h"
+#include "wingdi.h"
+#include "wine/test.h"
+
+#define expect(expected, got) ok(got == expected, "Expected %.8x, got %.8x\n", expected, got)
+
+static void test_constructor_destructor()
+{
+ GpStatus stat;
+ GpGraphics *graphics = NULL;
+ HDC hdc = GetDC(0);
+
+ stat = GdipCreateFromHDC(NULL, &graphics);
+ expect(OutOfMemory, stat);
+ stat = GdipDeleteGraphics(graphics);
+ expect(InvalidParameter, stat);
+
+ stat = GdipCreateFromHDC(hdc, &graphics);
+ expect(Ok, stat);
+ stat = GdipDeleteGraphics(graphics);
+ expect(Ok, stat);
+
+ stat = GdipCreateFromHWND(NULL, &graphics);
+ expect(Ok, stat);
+ stat = GdipDeleteGraphics(graphics);
+ expect(Ok, stat);
+
+ stat = GdipDeleteGraphics(NULL);
+ expect(InvalidParameter, stat);
+ ReleaseDC(0, hdc);
+}
+
+START_TEST(graphics)
+{
+ struct GdiplusStartupInput gdiplusStartupInput;
+ ULONG_PTR gdiplusToken;
+
+ gdiplusStartupInput.GdiplusVersion = 1;
+ gdiplusStartupInput.DebugEventCallback = NULL;
+ gdiplusStartupInput.SuppressBackgroundThread = 0;
+ gdiplusStartupInput.SuppressExternalCodecs = 0;
+
+ GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
+
+ test_constructor_destructor();
+
+ GdiplusShutdown(gdiplusToken);
+}