2 * PROJECT: ReactOS api tests
3 * LICENSE: GPL - See COPYING in the top level directory
4 * PURPOSE: Test for SetBrushOrgEx
5 * PROGRAMMERS: Timo Kreuzer
10 void Test_Set(ULONG ulLine
, HDC hdc
, INT x
, INT y
, LPPOINT ppt
, BOOL bExp
, DWORD dwErrExp
)
18 bResult
= SetBrushOrgEx(hdc
, x
, y
, ppt
);
26 ok(bResult
== bExp
, "line %ld: Wrong result, expected %d, got %d\n",
27 ulLine
, bExp
, bResult
);
28 ok(GetLastError() == dwErrExp
,"line %ld: Wrong error, expected %lx, got %lx\n",
29 ulLine
, dwErrExp
, GetLastError());
32 #define TEST_SET(hdc, x, y, ppt, bExp, dwErrExp) \
33 Test_Set(__LINE__, hdc, x, y, ppt, bExp, dwErrExp)
35 void Test_SetBrushOrgEx()
40 hdc
= CreateCompatibleDC(0);
41 ok(hdc
!= 0, "could not ceate DC\n");
43 TEST_SET(0, 0, 0, NULL
, 0, ERROR_INVALID_HANDLE
);
44 TEST_SET(0, 0, 0, (LPPOINT
)-1, 0, ERROR_INVALID_HANDLE
);
45 TEST_SET(0, 0, 0, &ptOldOrg
, 0, ERROR_INVALID_HANDLE
);
46 TEST_SET(hdc
, 1, 2, &ptOldOrg
, 1, 0);
47 ok_long(ptOldOrg
.x
, 0);
48 ok_long(ptOldOrg
.y
, 0);
49 SetBrushOrgEx(hdc
, 0, 0, &ptOldOrg
);
50 ok_long(ptOldOrg
.x
, 1);
51 ok_long(ptOldOrg
.y
, 2);
53 ptOldOrg
.x
= 0; ptOldOrg
.y
= 0;
54 TEST_SET(hdc
, 1, 2, (LPPOINT
)-1, -1, 0);
55 SetBrushOrgEx(hdc
, 0, 0, &ptOldOrg
);
56 ok_long(ptOldOrg
.x
, 0);
57 ok_long(ptOldOrg
.y
, 0);
60 TEST_SET(hdc
, -10000, -20000000, &ptOldOrg
, 1, 0);
61 ok_long(ptOldOrg
.x
, 0);
62 ok_long(ptOldOrg
.y
, 0);
63 SetBrushOrgEx(hdc
, 0, 0, &ptOldOrg
);
64 ok_long(ptOldOrg
.x
, -10000);
65 ok_long(ptOldOrg
.y
, -20000000);
70 START_TEST(SetBrushOrgEx
)