localui/tests: [2/2] Add initial test
Detlef Riekenberg
wine.dev at web.de
Fri Apr 6 15:33:17 CDT 2007
Changelog:
- localui/tests: Add initial test
--
By by ... Detlef
-------------- next part --------------
>From c0f864e3b19ff541605a65eed89018f75da0bdf2 Mon Sep 17 00:00:00 2001
From: Detlef Riekenberg <wine.dev at web.de>
Date: Fri, 6 Apr 2007 22:24:03 +0200
Subject: [PATCH] localui/tests: Add initial test
---
dlls/localui/tests/Makefile.in | 13 ++++++
dlls/localui/tests/localui.c | 91 ++++++++++++++++++++++++++++++++++++++++
2 files changed, 104 insertions(+), 0 deletions(-)
diff --git a/dlls/localui/tests/Makefile.in b/dlls/localui/tests/Makefile.in
new file mode 100644
index 0000000..191a312
--- /dev/null
+++ b/dlls/localui/tests/Makefile.in
@@ -0,0 +1,13 @@
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../../..
+SRCDIR = @srcdir@
+VPATH = @srcdir@
+TESTDLL = localui.dll
+IMPORTS = kernel32
+
+CTESTS = \
+ localui.c
+
+ at MAKE_TEST_RULES@
+
+ at DEPENDENCIES@ # everything below this line is overwritten by make depend
diff --git a/dlls/localui/tests/localui.c b/dlls/localui/tests/localui.c
new file mode 100644
index 0000000..37e8be5
--- /dev/null
+++ b/dlls/localui/tests/localui.c
@@ -0,0 +1,91 @@
+/*
+ * Unit test suite for the Local Printmonitor User Interface
+ *
+ * Copyright 2007 Detlef Riekenberg
+ *
+ * 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 <stdarg.h>
+
+#include "windef.h"
+#include "winbase.h"
+#include "winerror.h"
+#include "wingdi.h"
+#include "winreg.h"
+
+#include "winspool.h"
+#include "ddk/winsplp.h"
+
+#include "wine/test.h"
+
+
+/* ##### */
+
+static HMODULE hdll;
+static PMONITORUI (WINAPI *pInitializePrintMonitorUI)(VOID);
+static PMONITORUI pui;
+static BOOL (WINAPI *pAddPortUI)(PCWSTR, HWND, PCWSTR, PWSTR *);
+static BOOL (WINAPI *pConfigurePortUI)(PCWSTR, HWND, PCWSTR);
+static BOOL (WINAPI *pDeletePortUI)(PCWSTR, HWND, PCWSTR);
+
+/* ########################### */
+
+static LPCSTR load_functions(void)
+{
+ LPCSTR ptr;
+
+ ptr = "localui.dll";
+ hdll = LoadLibraryA(ptr);
+ if (!hdll) return ptr;
+
+ ptr = "InitializePrintMonitorUI";
+ pInitializePrintMonitorUI = (VOID *) GetProcAddress(hdll, ptr);
+ if (!pInitializePrintMonitorUI) return ptr;
+
+ return NULL;
+}
+
+
+/* ########################### */
+
+START_TEST(localui)
+{
+ LPCSTR ptr;
+ DWORD numentries;
+
+
+ /* localui.dll does not exist before w2k */
+ ptr = load_functions();
+ if (ptr) {
+ skip("%s not found\n", ptr);
+ return;
+ }
+
+ pui = pInitializePrintMonitorUI();
+ if (pui) {
+ numentries = (pui->dwMonitorUISize - sizeof(DWORD)) / sizeof(VOID *);
+ ok( numentries == 3,
+ "dwMonitorUISize (%d) => %d Functions\n", pui->dwMonitorUISize, numentries);
+
+ if (numentries > 2) {
+ pAddPortUI = pui->pfnAddPortUI;
+ pConfigurePortUI = pui->pfnConfigurePortUI;
+ pDeletePortUI = pui->pfnDeletePortUI;
+ }
+ }
+
+}
--
1.4.1
More information about the wine-patches
mailing list