From ef7a7794ca8b160ec1e51f6d5debc769b420d73a Mon Sep 17 00:00:00 2001 From: Detlef Riekenberg Date: Thu, 9 Aug 2007 19:11:20 +0200 Subject: [PATCH] comdlg32/tests: Add simple tests for PrintDlgA. --- dlls/comdlg32/tests/printdlg.c | 46 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/dlls/comdlg32/tests/printdlg.c b/dlls/comdlg32/tests/printdlg.c index 227c61fc4c4..27b0390cf97 100644 --- a/dlls/comdlg32/tests/printdlg.c +++ b/dlls/comdlg32/tests/printdlg.c @@ -34,6 +34,51 @@ #include "wine/test.h" +/* ######## */ + +static void test_PageSetupDlgA(void) +{ + LPPAGESETUPDLGA pDlg; + DWORD res; + + pDlg = HeapAlloc(GetProcessHeap(), 0, (sizeof(PAGESETUPDLGA)) * 2); + if (!pDlg) return; + + SetLastError(0xdeadbeef); + res = PageSetupDlgA(NULL); + ok( !res && (CommDlgExtendedError() == CDERR_INITIALIZATION), + "returned %u with %u and 0x%x (expected '0' and " + "CDERR_INITIALIZATION)\n", res, GetLastError(), CommDlgExtendedError()); + + ZeroMemory(pDlg, sizeof(PAGESETUPDLGA)); + pDlg->lStructSize = sizeof(PAGESETUPDLGA) -1; + SetLastError(0xdeadbeef); + res = PageSetupDlgA(pDlg); + ok( !res && (CommDlgExtendedError() == CDERR_STRUCTSIZE), + "returned %u with %u and 0x%x (expected '0' and " + "CDERR_STRUCTSIZE)\n", res, GetLastError(), CommDlgExtendedError()); + + + ZeroMemory(pDlg, sizeof(PAGESETUPDLGA)); + pDlg->lStructSize = sizeof(PAGESETUPDLGA); + pDlg->Flags = PSD_RETURNDEFAULT; + SetLastError(0xdeadbeef); + res = PageSetupDlgA(pDlg); + ok( res || (CommDlgExtendedError() == PDERR_NODEFAULTPRN), + "returned %u with %u and 0x%x (expected '!= 0' or '0' and " + "PDERR_NODEFAULTPRN)\n", res, GetLastError(), CommDlgExtendedError()); + + ok( pDlg->hDevMode && pDlg->hDevNames, + "got %p and %p (expected '!= NULL' for both)\n", + pDlg->hDevMode, pDlg->hDevNames); + + GlobalFree(pDlg->hDevMode); + GlobalFree(pDlg->hDevNames); + + HeapFree(GetProcessHeap(), 0, pDlg); + +} + /* ##### */ static void test_PrintDlgA(void) @@ -78,6 +123,7 @@ static void test_PrintDlgA(void) START_TEST(printdlg) { + test_PageSetupDlgA(); test_PrintDlgA(); } -- 2.11.4.GIT