[w32knapi}
authorTimo Kreuzer <timo.kreuzer@reactos.org>
Sat, 8 May 2010 16:38:05 +0000 (16:38 +0000)
committerTimo Kreuzer <timo.kreuzer@reactos.org>
Sat, 8 May 2010 16:38:05 +0000 (16:38 +0000)
Patch by Jerome Gardou: add some more tests for NtGdiDeleteObjectApp

svn path=/trunk/; revision=47130

rostests/apitests/w32knapi/ntgdi/NtGdiCreateCompatibleDC.c
rostests/apitests/w32knapi/ntgdi/NtGdiDeleteObjectApp.c

index 3597eb6..130e100 100644 (file)
@@ -21,6 +21,8 @@ Test_NtGdiCreateCompatibleDC(PTESTINFO pti)
        /* The default pen should be GetStockObject(BLACK_PEN) */
        hObj = SelectObject(hDC, GetStockObject(WHITE_PEN));
        TEST(hObj == GetStockObject(BLACK_PEN));
+       
+       TEST(NtGdiDeleteObjectApp(hDC) != 0);
 
        TEST(NtGdiDeleteObjectApp(hDC) != 0);
 
index 0084b10..53d8d25 100644 (file)
@@ -23,7 +23,27 @@ Test_NtGdiDeleteObjectApp(PTESTINFO pti)
     TEST(NtGdiDeleteObjectApp(hdc) == 1);
     TEST(GetLastError() == 0);
     TEST(IsHandleValid(hdc) == 0);
-
+    
+    /* Delete a display DC */
+    SetLastError(0);
+    hdc = CreateDC("DISPLAY", NULL, NULL, NULL);
+    ASSERT(IsHandleValid(hdc) == 1);
+    TEST(NtGdiDeleteObjectApp(hdc) != 0);
+    TEST(GetLastError() == 0);
+    TEST(IsHandleValid(hdc) == 1);
+    TEST(SelectObject(hdc, GetStockObject(WHITE_PEN)) == NULL);
+    TESTX(GetLastError() == ERROR_INVALID_PARAMETER, "GetLasterror returned 0x%08x\n", (unsigned int)GetLastError());
+    
+    /* Once more */
+    SetLastError(0);
+    hdc = GetDC(0);
+    ASSERT(IsHandleValid(hdc) == 1);
+    TEST(NtGdiDeleteObjectApp(hdc) != 0);
+    TEST(GetLastError() == 0);
+    TEST(IsHandleValid(hdc) == 1);
+    TEST(SelectObject(hdc, GetStockObject(WHITE_PEN)) == NULL);
+    TESTX(GetLastError() == ERROR_INVALID_PARAMETER, "GetLasterror returned 0x%08x\n", (unsigned int)GetLastError());
+    
     /* Delete a display DC */
     SetLastError(0);
     hdc = CreateDC("DISPLAY", NULL, NULL, NULL);