Module: wine Branch: master Commit: 13892639b42214bc31436847544f2277d6cb5ad8 URL: http://source.winehq.org/git/wine.git/?a=commit;h=13892639b42214bc3143684754...
Author: Detlef Riekenberg wine.dev@web.de Date: Tue Nov 28 00:50:57 2006 +0100
winspool/tests: Add initial tests for AddPort.
---
dlls/winspool.drv/tests/info.c | 41 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/dlls/winspool.drv/tests/info.c b/dlls/winspool.drv/tests/info.c index e80eea3..b9c4807 100644 --- a/dlls/winspool.drv/tests/info.c +++ b/dlls/winspool.drv/tests/info.c @@ -327,6 +327,46 @@ static void test_AddMonitor(void)
/* ########################### */
+static void test_AddPort(void) +{ + DWORD res; + + SetLastError(0xdeadbeef); + res = AddPortA(NULL, 0, NULL); + RETURN_ON_DEACTIVATED_SPOOLER(res) + /* NT: RPC_X_NULL_REF_POINTER, 9x: ERROR_INVALID_PARAMETER */ + ok( !res && ((GetLastError() == RPC_X_NULL_REF_POINTER) || + (GetLastError() == ERROR_INVALID_PARAMETER)), + "returned %d with %d (expected '0' with ERROR_NOT_SUPPORTED or " \ + "ERROR_INVALID_PARAMETER)\n", res, GetLastError()); + + + SetLastError(0xdeadbeef); + res = AddPortA(NULL, 0, empty); + /* Allowed only for (Printer-)Administrators */ + if (!res && (GetLastError() == ERROR_ACCESS_DENIED)) { + trace("skip tests (ACCESS_DENIED)\n"); + return; + } + /* XP: ERROR_NOT_SUPPORTED, NT351 and 9x: ERROR_INVALID_PARAMETER */ + ok( !res && ((GetLastError() == ERROR_NOT_SUPPORTED) || + (GetLastError() == ERROR_INVALID_PARAMETER)), + "returned %d with %d (expected '0' with ERROR_NOT_SUPPORTED or " \ + "ERROR_INVALID_PARAMETER)\n", res, GetLastError()); + + + SetLastError(0xdeadbeef); + res = AddPortA(NULL, 0, does_not_exist); + /* XP: ERROR_NOT_SUPPORTED, NT351 and 9x: ERROR_INVALID_PARAMETER */ + ok( !res && ((GetLastError() == ERROR_NOT_SUPPORTED) || + (GetLastError() == ERROR_INVALID_PARAMETER)), + "returned %d with %d (expected '0' with ERROR_NOT_SUPPORTED or " \ + "ERROR_INVALID_PARAMETER)\n", res, GetLastError()); + +} + +/* ########################### */ + static void test_ConfigurePort(void) { DWORD res; @@ -1609,6 +1649,7 @@ START_TEST(info) default_printer = find_default_printer();
test_AddMonitor(); + test_AddPort(); test_ConfigurePort(); test_DeleteMonitor(); test_DeletePort();