[APITESTS][WIN32KNT_APITEST] Improve NtGdiArcInternal testcase (#1276)
[reactos.git] / modules / rostests / apitests / win32nt / ntgdi / NtGdiArcInternal.c
1 /*
2 * PROJECT: ReactOS api tests
3 * LICENSE: GPL - See COPYING in the top level directory
4 * PURPOSE: Test for NtGdiArcInternal
5 * PROGRAMMERS:
6 */
7
8 #include <win32nt.h>
9
10 START_TEST(NtGdiArcInternal)
11 {
12 HDC hDC = CreateDCW(L"Display",NULL,NULL,NULL);
13
14 SetLastError(ERROR_SUCCESS);
15 ok_int(NtGdiArcInternal(0, 0, 0, 0, 0, 0, 0, 0, 0, 0), FALSE);
16 ok_long(GetLastError(), ERROR_INVALID_HANDLE);
17
18 SetLastError(ERROR_SUCCESS);
19 ok_int(NtGdiArcInternal(0, hDC, 0, 0, 0, 0, 0, 0, 0, 0), TRUE);
20 ok_int(NtGdiArcInternal(1, hDC, 0, 0, 0, 0, 0, 0, 0, 0), TRUE);
21 ok_int(NtGdiArcInternal(2, hDC, 0, 0, 0, 0, 0, 0, 0, 0), TRUE);
22 ok_int(NtGdiArcInternal(3, hDC, 0, 0, 0, 0, 0, 0, 0, 0), TRUE);
23 ok_long(GetLastError(), ERROR_SUCCESS);
24
25 SetLastError(ERROR_SUCCESS);
26 ok_int(NtGdiArcInternal(4, hDC, 0, 0, 0, 0, 0, 0, 0, 0), FALSE);
27 ok_long(GetLastError(), ERROR_INVALID_PARAMETER);
28
29 SetLastError(ERROR_SUCCESS);
30 ok_int(NtGdiArcInternal(4, (HDC)10, 0, 0, 0, 0, 0, 0, 0, 0), FALSE);
31 ok_long(GetLastError(), ERROR_INVALID_HANDLE);
32
33 SetLastError(ERROR_SUCCESS);
34 ok_int(NtGdiArcInternal(0, hDC, 10, 10, 0, 0, 0, 0, 0, 0), TRUE);
35 ok_int(NtGdiArcInternal(0, hDC, 10, 10, -10, -10, 0, 0, 0, 0), TRUE);
36 ok_int(NtGdiArcInternal(0, hDC, 0, 0, 0, 0, 10, 0, -10, 0), TRUE);
37
38 // was passiert, wenn left > right ? einfach tauschen?
39
40 DeleteDC(hDC);
41 }