diff --git a/rostests/apitests/gdi32/CMakeLists.txt b/rostests/apitests/gdi32/CMakeLists.txt index c502f0d8c1c..6b430c4c187 100644 --- a/rostests/apitests/gdi32/CMakeLists.txt +++ b/rostests/apitests/gdi32/CMakeLists.txt @@ -59,6 +59,7 @@ list(APPEND SOURCE Rectangle.c RealizePalette.c SelectObject.c + SetBoundsRect.c SetBrushOrgEx.c SetDCPenColor.c SetDIBits.c diff --git a/rostests/apitests/gdi32/SetBoundsRect.c b/rostests/apitests/gdi32/SetBoundsRect.c new file mode 100644 index 00000000000..261d99dde29 --- /dev/null +++ b/rostests/apitests/gdi32/SetBoundsRect.c @@ -0,0 +1,56 @@ +/* + * PROJECT: ReactOS API tests + * LICENSE: LGPLv2.1+ - See COPYING.LIB in the top level directory + * PURPOSE: Test for SetBoundsRect + * PROGRAMMERS: Thomas Faber +#include +#include + +START_TEST(SetBoundsRect) +{ + HDC hDC; + UINT ret; + DWORD error; + + hDC = CreateCompatibleDC(GetDC(NULL)); + if (hDC == NULL) + { + skip("No DC\n"); + return; + } + + SetLastError(0xbeeffeed); + ret = SetBoundsRect(hDC, NULL, 0); + error = GetLastError(); + ok(ret == (DCB_DISABLE | DCB_RESET), "ret = %u\n", ret); + ok(error == 0xbeeffeed, "error = %lu\n", error); + + SetLastError(0xbeeffeed); + ret = SetBoundsRect(hDC, NULL, DCB_ACCUMULATE); + error = GetLastError(); + ok(ret == (DCB_DISABLE | DCB_RESET), "ret = %u\n", ret); + ok(error == 0xbeeffeed, "error = %lu\n", error); + + SetLastError(0xbeeffeed); + ret = SetBoundsRect(hDC, NULL, DCB_DISABLE); + error = GetLastError(); + ok(ret == (DCB_DISABLE | DCB_RESET), "ret = %u\n", ret); + ok(error == 0xbeeffeed, "error = %lu\n", error); + + SetLastError(0xbeeffeed); + ret = SetBoundsRect(hDC, NULL, DCB_ENABLE); + error = GetLastError(); + ok(ret == (DCB_DISABLE | DCB_RESET), "ret = %u\n", ret); + ok(error == 0xbeeffeed, "error = %lu\n", error); + + SetLastError(0xbeeffeed); + ret = SetBoundsRect(hDC, NULL, DCB_RESET); + error = GetLastError(); + ok(ret == (DCB_ENABLE | DCB_RESET), "ret = %u\n", ret); + ok(error == 0xbeeffeed, "error = %lu\n", error); + + DeleteDC(hDC); +} diff --git a/rostests/apitests/gdi32/testlist.c b/rostests/apitests/gdi32/testlist.c index c6acd0330c2..6a99fa51298 100644 --- a/rostests/apitests/gdi32/testlist.c +++ b/rostests/apitests/gdi32/testlist.c @@ -60,6 +60,7 @@ extern void func_PatBlt(void); extern void func_Rectangle(void); extern void func_RealizePalette(void); extern void func_SelectObject(void); +extern void func_SetBoundsRect(void); extern void func_SetBrushOrgEx(void); extern void func_SetDCPenColor(void); extern void func_SetDIBits(void); @@ -129,6 +130,7 @@ const struct test winetest_testlist[] = { "Rectangle", func_Rectangle }, { "RealizePalette", func_RealizePalette }, { "SelectObject", func_SelectObject }, + { "SetBoundsRect", func_SetBoundsRect }, { "SetBrushOrgEx", func_SetBrushOrgEx }, { "SetDCPenColor", func_SetDCPenColor }, { "SetDIBits", func_SetDIBits },