25d81c3915110cb2e8115afa79560e99107d8ff4
[reactos.git] / rostests / apitests / gdi32 / CreateBitmapIndirect.c
1 /*
2 * PROJECT: ReactOS api tests
3 * LICENSE: GPL - See COPYING in the top level directory
4 * PURPOSE: Test for CreateBitmapIndirect
5 * PROGRAMMERS: Magnus Olsen
6 */
7
8 #include <wine/test.h>
9 #include <wingdi.h>
10
11 void Test_CreateBitmapIndirect()
12 {
13 HBITMAP win_hBmp;
14 BITMAP win_bitmap;
15
16 win_bitmap.bmBits = 0;
17 win_bitmap.bmBitsPixel = 1;
18 win_bitmap.bmHeight = 0;
19 win_bitmap.bmPlanes = 1;
20 win_bitmap.bmType = 1;
21 win_bitmap.bmWidth = 0;
22 win_bitmap.bmWidthBytes = 2;
23 win_hBmp = CreateBitmapIndirect(&win_bitmap);
24 ok(win_hBmp != 0, "CreateBitmapIndirect failed\n");
25
26 DeleteObject(win_hBmp);
27
28 RtlZeroMemory(&win_bitmap,sizeof(BITMAP));
29 win_bitmap.bmBits = 0;
30 win_bitmap.bmBitsPixel = 1;
31 win_bitmap.bmHeight = 0;
32 win_bitmap.bmPlanes = 1;
33 win_bitmap.bmType = 1;
34 win_bitmap.bmWidth = 0;
35 win_bitmap.bmWidthBytes = 1;
36 win_hBmp = CreateBitmapIndirect(&win_bitmap);
37 ok(win_hBmp == 0, "CreateBitmapIndirect succeeded\n");
38
39 RtlZeroMemory(&win_bitmap,sizeof(BITMAP));
40 win_bitmap.bmBits = 0;
41 win_bitmap.bmBitsPixel = 1;
42 win_bitmap.bmHeight = 0;
43 win_bitmap.bmPlanes = 1;
44 win_bitmap.bmType = 1;
45 win_bitmap.bmWidth = 0;
46 win_bitmap.bmWidthBytes = 3;
47 win_hBmp = CreateBitmapIndirect(&win_bitmap);
48 ok(win_hBmp == 0, "CreateBitmapIndirect succeeded\n");
49
50 RtlZeroMemory(&win_bitmap,sizeof(BITMAP));
51 win_bitmap.bmBits = 0;
52 win_bitmap.bmBitsPixel = 1;
53 win_bitmap.bmHeight = 0;
54 win_bitmap.bmPlanes = 1;
55 win_bitmap.bmType = 1;
56 win_bitmap.bmWidth = 0;
57 win_bitmap.bmWidthBytes = 4;
58 win_hBmp = CreateBitmapIndirect(&win_bitmap);
59 ok(win_hBmp != 0, "CreateBitmapIndirect failed\n");
60
61 RtlZeroMemory(&win_bitmap,sizeof(BITMAP));
62 win_bitmap.bmBits = 0;
63 win_bitmap.bmBitsPixel = 8;
64 win_bitmap.bmHeight = 0xF000;
65 win_bitmap.bmPlanes = 1;
66 win_bitmap.bmType = 1;
67 win_bitmap.bmWidth = 0x8000;
68 win_bitmap.bmWidthBytes = win_bitmap.bmWidth;
69 win_hBmp = CreateBitmapIndirect(&win_bitmap);
70 //ok(win_hBmp != 0, "CreateBitmapIndirect failed\n"); // fails on win 2003
71
72 DeleteObject(win_hBmp);
73 }
74
75 START_TEST(CreateBitmapIndirect)
76 {
77 Test_CreateBitmapIndirect();
78 }
79