2 * PROJECT: ReactOS api tests
3 * LICENSE: GPLv2+ - See COPYING in the top level directory
4 * PURPOSE: COM interface test for browseui classes
5 * PROGRAMMER: Thomas Faber <thfabba@gmx.de>
8 #include "com_apitest.h"
13 static const CLASS_AND_INTERFACES ExpectedInterfaces
[] =
16 ID_NAME(CLSID_ACLMulti
),
18 { 0x0, &IID_IEnumString
},
19 { 0x0, &IID_IUnknown
},
20 { 0x4, &IID_IObjMgr
},
21 { 0x8, &IID_IACList
},
25 ID_NAME(CLSID_AddressEditBox
),
27 { 0x0, &IID_IWinEventHandler
},
28 { 0x0, &IID_IUnknown
},
29 { 0x4, &IID_IDispatch
},
30 { 0x8, &IID_IAddressBand
},
31 { 0xc, &IID_IAddressEditBox
},
32 { 0x10, &IID_IOleCommandTarget
},
33 { 0x14, &IID_IPersistStream
},
34 { 0x18, &IID_IShellService
},
38 ID_NAME(CLSID_BandProxy
),
40 { 0x0, &IID_IBandProxy
},
41 { 0x0, &IID_IUnknown
},
45 ID_NAME(CLSID_BrandBand
),
47 { 0x0, &IID_IDeskBand
},
48 { 0x0, &IID_IDockingWindow
},
49 { 0x0, &IID_IOleWindow
},
50 { 0x0, &IID_IUnknown
},
51 { 0x4, &IID_IObjectWithSite
},
52 { 0xc, &IID_IInputObject
},
53 { 0x10, &IID_IPersistStream
},
54 { 0x10, &IID_IPersist
},
55 { 0x14, &IID_IOleCommandTarget
},
56 { 0x18, &IID_IServiceProvider
},
57 { 0x30, &IID_IWinEventHandler
},
58 { 0x34, &IID_IDispatch
},
62 ID_NAME(CLSID_BandSiteMenu
),
64 { 0x0, &IID_IContextMenu3
},
65 { 0x0, &IID_IContextMenu2
},
66 { 0x0, &IID_IContextMenu
},
67 { 0x0, &IID_IUnknown
},
68 { 0x4, &IID_IShellService
},
72 ID_NAME(CLSID_CCommonBrowser
),
74 { 0x0, &IID_IUnknown
},
75 { 0xc, &IID_IShellBrowser
},
76 { 0xc, &IID_IOleWindow
},
77 { 0x10, &IID_IBrowserService3
},
78 { 0x10, &IID_IBrowserService2
},
79 { 0x10, &IID_IBrowserService
},
80 { 0x14, &IID_IServiceProvider
},
81 { 0x18, &IID_IOleCommandTarget
},
82 { 0x1c, &IID_IDockingWindowSite
},
83 { 0x20, &IID_IDockingWindowFrame
},
84 { 0x24, &IID_IInputObjectSite
},
85 { 0x28, &IID_IDropTarget
},
86 { 0x2c, &IID_IShellBrowserService
},
90 ID_NAME(CLSID_CRegTreeOptions
),
92 { 0x0, &IID_IRegTreeOptions
},
93 { 0x0, &IID_IUnknown
},
94 { 0x4, &IID_IObjectWithSite
},
98 ID_NAME(CLSID_DeskBar
),
100 { -0xb8, &IID_IOleCommandTarget
},
101 { -0xb4, &IID_IServiceProvider
},
102 { -0xb0, &IID_IDeskBar
},
103 { -0xb0, &IID_IOleWindow
},
104 { -0xac, &IID_IInputObjectSite
},
105 { -0xa8, &IID_IInputObject
},
106 { -0x70, &IID_IDockingWindow
},
107 { -0x6c, &IID_IObjectWithSite
},
108 { -0x68, &IID_IPersistStreamInit
},
109 { -0x68, &IID_IPersistStream
},
110 { -0x68, &IID_IPersist
},
111 { -0x64, &IID_IPersistPropertyBag
},
112 { 0x0, &IID_IUnknown
},
116 ID_NAME(CLSID_DeskBarApp
),
118 { -0xb8, &IID_IOleCommandTarget
},
119 { -0xb4, &IID_IServiceProvider
},
120 { -0xb0, &IID_IDeskBar
},
121 { -0xb0, &IID_IOleWindow
},
122 { -0xac, &IID_IInputObjectSite
},
123 { -0xa8, &IID_IInputObject
},
124 { -0x70, &IID_IDockingWindow
},
125 { -0x6c, &IID_IObjectWithSite
},
126 { -0x68, &IID_IPersistStreamInit
},
127 { -0x68, &IID_IPersistStream
},
128 { -0x68, &IID_IPersist
},
129 { -0x64, &IID_IPersistPropertyBag
},
130 { 0x0, &IID_IUnknown
},
131 { 0x8, &IID_IContextMenu3
},
132 { 0x8, &IID_IContextMenu2
},
133 { 0x8, &IID_IContextMenu
},
137 ID_NAME(CLSID_GlobalFolderSettings
),
139 { 0x0, &IID_IGlobalFolderSettings
},
140 { 0x0, &IID_IUnknown
},
145 ID_NAME(CLSID_InternetToolbar
),
147 { -0x54, &IID_IOleCommandTarget
},
148 { -0x50, &IID_IServiceProvider
},
149 { -0x4c, &IID_IDeskBar
},
150 { -0x4c, &IID_IOleWindow
},
151 { -0x48, &IID_IInputObjectSite
},
152 { -0x44, &IID_IInputObject
},
153 { -0xc, &IID_IDockingWindow
},
154 { -0x8, &IID_IObjectWithSite
},
155 { -0x4, &IID_IExplorerToolbar
},
156 { 0x0, &IID_IDispatch
},
157 { 0x0, &IID_IUnknown
},
158 { 0x4, &IID_IPersistStreamInit
},
159 { 0x8, &IID_IShellChangeNotify
},
163 ID_NAME(CLSID_RebarBandSite
),
165 { 0x0, &IID_IUnknown
},
166 { 0xc, &IID_IBandSite
},
167 { 0x10, &IID_IInputObjectSite
},
168 { 0x14, &IID_IInputObject
},
169 { 0x18, &IID_IDeskBarClient
},
170 { 0x18, &IID_IOleWindow
},
171 { 0x1c, &IID_IWinEventHandler
},
172 { 0x20, &IID_IPersistStream
},
173 { 0x20, &IID_IPersist
},
174 { 0x24, &IID_IDropTarget
},
175 { 0x28, &IID_IServiceProvider
},
176 { 0x2c, &IID_IBandSiteHelper
},
177 { 0x30, &IID_IOleCommandTarget
},
181 ID_NAME(CLSID_SH_AddressBand
),
183 { 0x0, &IID_IDeskBand
},
184 { 0x0, &IID_IDockingWindow
},
185 { 0x0, &IID_IOleWindow
},
186 { 0x0, &IID_IUnknown
},
187 { 0x4, &IID_IObjectWithSite
},
188 { 0xc, &IID_IInputObject
},
189 { 0x10, &IID_IPersistStream
},
190 { 0x10, &IID_IPersist
},
191 { 0x14, &IID_IOleCommandTarget
},
192 { 0x18, &IID_IServiceProvider
},
193 { 0x30, &IID_IWinEventHandler
},
194 { 0x34, &IID_IAddressBand
},
195 { 0x38, &IID_IInputObjectSite
},
199 ID_NAME(CLSID_ShellSearchExt
),
201 { 0x0, &IID_IContextMenu
},
202 { 0x0, &IID_IUnknown
},
203 { 0x4, &IID_IObjectWithSite
},
207 static const INT ExpectedInterfaceCount
= RTL_NUMBER_OF(ExpectedInterfaces
);
211 TestClasses(L
"browseui", ExpectedInterfaces
, ExpectedInterfaceCount
);