c952d22c9e921a60117a74e0a479066c66858f5c
[reactos.git] / modules / rostests / apitests / gdi32 / GetClipRgn.c
1 /*
2 * PROJECT: ReactOS api tests
3 * LICENSE: GPL - See COPYING in the top level directory
4 * PURPOSE: Test for GetClipRgn
5 * PROGRAMMERS: Timo Kreuzer
6 */
7
8 #include <apitest.h>
9
10 #include <wingdi.h>
11 #include <winuser.h>
12
13 void Test_GetClipRgn()
14 {
15 HWND hWnd;
16 HDC hDC;
17 HRGN hrgn;//, hrgn2;
18 int ret;
19
20 /* Create a window */
21 hWnd = CreateWindowW(L"BUTTON", L"TestWindow", WS_OVERLAPPEDWINDOW | WS_VISIBLE,
22 CW_USEDEFAULT, CW_USEDEFAULT, 100, 100,
23 NULL, NULL, 0, 0);
24
25 hDC = GetDC(hWnd);
26 hrgn = CreateRectRgn(0,0,0,0);
27
28 /* Test invalid DC */
29 SetLastError(ERROR_SUCCESS);
30 ret = GetClipRgn((HDC)0x12345, hrgn);
31 ok(ret == -1, "Expected -1, got %d\n", ret);
32 ok(GetLastError() == ERROR_INVALID_PARAMETER, "Expected ERROR_INVALID_PARAMETER, got %ld\n", GetLastError());
33
34 /* Test invalid hrgn */
35 SetLastError(ERROR_SUCCESS);
36 ret = GetClipRgn(hDC, (HRGN)0x12345);
37 ok(ret == 0, "Expected 0, got %d\n", ret);
38 ok(GetLastError() == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", GetLastError());
39
40 ReleaseDC(hWnd, hDC);
41 DestroyWindow(hWnd);
42 }
43
44 START_TEST(GetClipRgn)
45 {
46 Test_GetClipRgn();
47 }
48