Detlef Riekenberg : winspool/tests: More tests for OpenPrinter.

Alexandre Julliard julliard at wine.codeweavers.com
Wed May 17 04:47:11 CDT 2006


Module: wine
Branch: refs/heads/master
Commit: 461b2a758322cdb34e6ee43688e0c3c9326eda88
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=461b2a758322cdb34e6ee43688e0c3c9326eda88

Author: Detlef Riekenberg <wine.dev at web.de>
Date:   Thu May 11 19:57:48 2006 +0200

winspool/tests: More tests for OpenPrinter.

---

 dlls/winspool/tests/info.c |   22 +++++++++++++++++++++-
 1 files changed, 21 insertions(+), 1 deletions(-)

diff --git a/dlls/winspool/tests/info.c b/dlls/winspool/tests/info.c
index 3fa9fe2..4483e65 100644
--- a/dlls/winspool/tests/info.c
+++ b/dlls/winspool/tests/info.c
@@ -792,9 +792,11 @@ static void test_OpenPrinter(void)
         hprinter = (HANDLE) MAGIC_DEAD;
         SetLastError(MAGIC_DEAD);
         res = OpenPrinter(NULL, &hprinter, &defaults);
+        todo_wine {
         ok(!res && GetLastError() == ERROR_ACCESS_DENIED,
             "returned %ld with %ld (expected '0' with ERROR_ACCESS_DENIED)\n", 
             res, GetLastError());
+        }
         if (res) ClosePrinter(hprinter);
 
     }
@@ -828,6 +830,17 @@ static void test_OpenPrinter(void)
        "ERROR_INVALID_PRINTER_NAME)\n", res, GetLastError());
     if(res) ClosePrinter(hprinter);
 
+    hprinter = (HANDLE) MAGIC_DEAD;
+    SetLastError(MAGIC_DEAD);
+    res = OpenPrinter("", &hprinter, NULL);
+    /* NT: ERROR_INVALID_PRINTER_NAME,  9x: ERROR_INVALID_PARAMETER */
+    ok( !res &&
+        ((GetLastError() == ERROR_INVALID_PRINTER_NAME) || 
+        (GetLastError() == ERROR_INVALID_PARAMETER) ),
+        "returned %ld with %ld (expected '0' with: ERROR_INVALID_PRINTER_NAME" \
+        " or ERROR_INVALID_PARAMETER)\n", res, GetLastError());
+    if(res) ClosePrinter(hprinter);
+
 
     /* Get Handle for the default Printer */
     if ((default_printer = find_default_printer()))
@@ -837,12 +850,19 @@ static void test_OpenPrinter(void)
         res = OpenPrinter(default_printer, &hprinter, NULL);
         if((!res) && (GetLastError() == RPC_S_SERVER_UNAVAILABLE))
         {
-                trace("The Service 'Spooler' is required for '%s'\n", default_printer);
+            trace("The Service 'Spooler' is required for '%s'\n", default_printer);
             return;
         }
         ok(res, "returned %ld with %ld (expected '!=0')\n", res, GetLastError());
         if(res) ClosePrinter(hprinter);
 
+        SetLastError(MAGIC_DEAD);
+        res = OpenPrinter(default_printer, NULL, NULL);
+        /* NT: FALSE with ERROR_INVALID_PARAMETER, 9x: TRUE */
+        ok(res || (GetLastError() == ERROR_INVALID_PARAMETER),
+            "returned %ld with %ld (expected '!=0' or '0' with " \
+            "ERROR_INVALID_PARAMETER)\n", res, GetLastError());
+
         defaults.pDatatype=NULL;
         defaults.pDevMode=NULL;
         defaults.DesiredAccess=0;




More information about the wine-cvs mailing list