[SPOOLSS_APITEST]
authorColin Finck <colin@reactos.org>
Sat, 6 Jun 2015 12:32:30 +0000 (12:32 +0000)
committerColin Finck <colin@reactos.org>
Sat, 6 Jun 2015 12:32:30 +0000 (12:32 +0000)
Add a test for SplInitializeWinSpoolDrv verifying that Wine's XP-compatible implementation of this function also works for 2003 (and that we're going to need some nameless exports by ordinals in winspool.drv...)

svn path=/branches/colins-printing-for-freedom/; revision=68035

rostests/apitests/spoolss/CMakeLists.txt
rostests/apitests/spoolss/SplInitializeWinSpoolDrv.c [new file with mode: 0644]
rostests/apitests/spoolss/testlist.c

index 8550695..4e70a16 100644 (file)
@@ -3,6 +3,7 @@ include_directories(${REACTOS_SOURCE_DIR}/win32ss/printing/include)
 
 list(APPEND SOURCE
     PackStrings.c
+    SplInitializeWinSpoolDrv.c
     testlist.c)
 
 add_executable(spoolss_apitest ${SOURCE})
diff --git a/rostests/apitests/spoolss/SplInitializeWinSpoolDrv.c b/rostests/apitests/spoolss/SplInitializeWinSpoolDrv.c
new file mode 100644 (file)
index 0000000..6415aac
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+ * PROJECT:     ReactOS Spooler Router API Tests
+ * LICENSE:     GNU GPLv2 or any later version as published by the Free Software Foundation
+ * PURPOSE:     Tests for SplInitializeWinSpoolDrv
+ * COPYRIGHT:   Copyright 2015 Colin Finck <colin@reactos.org>
+ */
+
+#include <apitest.h>
+
+#define WIN32_NO_STATUS
+#include <windef.h>
+#include <winbase.h>
+#include <spoolss.h>
+
+START_TEST(SplInitializeWinSpoolDrv)
+{
+    HINSTANCE hWinspool;
+    void* Table[9];
+
+    hWinspool = LoadLibraryW(L"winspool.drv");
+
+    ok(SplInitializeWinSpoolDrv(Table), "SplInitializeWinSpoolDrv returns FALSE!\n");
+    ok(Table[0] == GetProcAddress(hWinspool, "OpenPrinterW"), "Table[0] is %p\n", Table[0]);
+    ok(Table[1] == GetProcAddress(hWinspool, "ClosePrinter"), "Table[1] is %p\n", Table[1]);
+    ok(Table[2] == GetProcAddress(hWinspool, "SpoolerDevQueryPrintW"), "Table[2] is %p\n", Table[2]);
+    ok(Table[3] == GetProcAddress(hWinspool, "SpoolerPrinterEvent"), "Table[3] is %p\n", Table[3]);
+    ok(Table[4] == GetProcAddress(hWinspool, "DocumentPropertiesW"), "Table[4] is %p\n", Table[4]);
+    ok(Table[5] == GetProcAddress(hWinspool, (LPSTR)212), "Table[5] is %p\n", Table[5]);
+    ok(Table[6] == GetProcAddress(hWinspool, (LPSTR)213), "Table[6] is %p\n", Table[6]);
+    ok(Table[7] == GetProcAddress(hWinspool, (LPSTR)214), "Table[7] is %p\n", Table[7]);
+    ok(Table[8] == GetProcAddress(hWinspool, (LPSTR)215), "Table[8] is %p\n", Table[8]);
+}
index 0b10a39..b35127f 100644 (file)
 #include <apitest.h>
 
 extern void func_PackStrings(void);
+extern void func_SplInitializeWinSpoolDrv(void);
 
 const struct test winetest_testlist[] =
 {
     { "PackStrings", func_PackStrings },
+    { "SplInitializeWinSpoolDrv", func_SplInitializeWinSpoolDrv },
 
     { 0, 0 }
 };