From 19839c646cdfa1e96f43ea338df6313eefe696fc Mon Sep 17 00:00:00 2001 From: Colin Finck Date: Sat, 6 Jun 2015 12:32:30 +0000 Subject: [PATCH 1/1] [SPOOLSS_APITEST] 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 | 1 + .../spoolss/SplInitializeWinSpoolDrv.c | 32 +++++++++++++++++++ rostests/apitests/spoolss/testlist.c | 2 ++ 3 files changed, 35 insertions(+) create mode 100644 rostests/apitests/spoolss/SplInitializeWinSpoolDrv.c diff --git a/rostests/apitests/spoolss/CMakeLists.txt b/rostests/apitests/spoolss/CMakeLists.txt index 855069571c7..4e70a16650f 100644 --- a/rostests/apitests/spoolss/CMakeLists.txt +++ b/rostests/apitests/spoolss/CMakeLists.txt @@ -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 index 00000000000..6415aac052e --- /dev/null +++ b/rostests/apitests/spoolss/SplInitializeWinSpoolDrv.c @@ -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 + */ + +#include + +#define WIN32_NO_STATUS +#include +#include +#include + +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]); +} diff --git a/rostests/apitests/spoolss/testlist.c b/rostests/apitests/spoolss/testlist.c index 0b10a39b51e..b35127fa4fc 100644 --- a/rostests/apitests/spoolss/testlist.c +++ b/rostests/apitests/spoolss/testlist.c @@ -11,10 +11,12 @@ #include extern void func_PackStrings(void); +extern void func_SplInitializeWinSpoolDrv(void); const struct test winetest_testlist[] = { { "PackStrings", func_PackStrings }, + { "SplInitializeWinSpoolDrv", func_SplInitializeWinSpoolDrv }, { 0, 0 } }; -- 2.17.1