ReactOS 0.4.16-dev-1946-g52006dd
browseui.c
Go to the documentation of this file.
1/*
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 <thomas.faber@reactos.org>
6 * Carl Bialorucki <carl.bialorucki@reactos.org>
7 */
8
9#include "com_apitest.h"
10
11#define NDEBUG
12#include <debug.h>
13
15{
16 {
17 ID_NAME(CLSID_ACLCustomMRU, NTDDI_MIN, NTDDI_VISTASP4),
18 {
21 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IACList },
22 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IACLCustomMRU },
23 },
24 },
25 {
26 ID_NAME(CLSID_ACLHistory, NTDDI_MIN, NTDDI_VISTASP4),
27 {
30 },
31 },
32 {
33 ID_NAME(CLSID_ACLMRU, NTDDI_MIN, NTDDI_VISTASP4),
34 {
37 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IACList },
38 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IACLCustomMRU },
39 },
40 },
41 {
42 ID_NAME(CLSID_ACLMulti, NTDDI_MIN, NTDDI_VISTASP4),
43 {
46 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IObjMgr },
47 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IACList },
48 }
49 },
50 {
51 ID_NAME(CLSID_ACListISF, NTDDI_MIN, NTDDI_VISTASP4),
52 {
53 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IShellService },
54
57 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IACList2 },
58 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IACList },
59 { NTDDI_MIN, NTDDI_VISTASP4, &IID_ICurrentWorkingDirectory },
60 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IPersistFolder },
61
62 { NTDDI_VISTA, NTDDI_VISTASP4, &IID_IPersistIDList },
63 }
64 },
65 {
66 ID_NAME(CLSID_AddressEditBox, NTDDI_MIN, NTDDI_WS03SP4),
67 {
68 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IWinEventHandler },
71 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IAddressBand },
72 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IAddressEditBox },
73 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IOleCommandTarget },
75 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IShellService },
76 }
77 },
78 {
79 ID_NAME(CLSID_AugmentedShellFolder, NTDDI_MIN, NTDDI_WS03SP4),
80 {
81 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IAugmentedShellFolder2 },
82 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IAugmentedShellFolder },
83 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IShellFolder },
85 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IShellService },
86 { NTDDI_MIN, NTDDI_WS03SP4, &IID_ITranslateShellChangeNotify },
87 }
88 },
89 {
90 ID_NAME(CLSID_AugmentedShellFolder2, NTDDI_MIN, NTDDI_WS03SP4),
91 {
92 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IAugmentedShellFolder2 },
93 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IAugmentedShellFolder },
94 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IShellFolder },
96 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IShellFolder2 },
97 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IShellService },
98 { NTDDI_MIN, NTDDI_WS03SP4, &IID_ITranslateShellChangeNotify },
99 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IDropTarget },
100 }
101 },
102 {
103 ID_NAME(CLSID_AutoComplete, NTDDI_MIN, NTDDI_VISTASP4),
104 {
105 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IAutoComplete2 },
106 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IAutoComplete },
108 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IAutoCompleteDropDown },
110 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IAccessible },
112
113 { NTDDI_VISTA, NTDDI_VISTASP4, &IID_IShellService },
114 }
115 },
116 {
117 ID_NAME(CLSID_BackgroundTaskScheduler, NTDDI_MIN, NTDDI_VISTASP4),
118 {
119 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IShellTaskScheduler },
121 }
122 },
123 {
124 ID_NAME(CLSID_BandProxy, NTDDI_MIN, NTDDI_VISTASP4),
125 {
126 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IBandProxy },
127
129 }
130 },
131 {
132 ID_NAME(CLSID_BandSiteMenu, NTDDI_MIN, NTDDI_VISTASP4),
133 {
134 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu3 },
135 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu2 },
136 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu },
138 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IShellService },
139 }
140 },
141 {
142 ID_NAME(CLSID_BrandBand, NTDDI_MIN, NTDDI_WS03SP4),
143 {
144 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IDeskBand },
145 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IDockingWindow },
149 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IInputObject },
152 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IOleCommandTarget },
153 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IServiceProvider },
154 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IWinEventHandler },
156 }
157 },
158 {
159 ID_NAME(CLSID_BrowserBand, NTDDI_MIN, NTDDI_VISTASP4),
160 {
161 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDeskBand },
162 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDockingWindow },
165 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObject },
168 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IOleCommandTarget },
169 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IServiceProvider },
170 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu },
172 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IWinEventHandler },
175 },
176 },
177 {
178 ID_NAME(CLSID_CCommonBrowser, NTDDI_MIN, NTDDI_WS03SP4),
179 {
181 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IShellBrowser },
183 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IBrowserService3 },
184 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IBrowserService2 },
185 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IBrowserService },
186 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IServiceProvider },
187 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IOleCommandTarget },
188 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IDockingWindowSite },
189 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IDockingWindowFrame },
190 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IInputObjectSite },
191 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IDropTarget },
192 }
193 },
194 {
195 ID_NAME(CLSID_CDockingBarPropertyBag, NTDDI_MIN, NTDDI_VISTASP4),
196 {
199 },
200 },
201 {
202 ID_NAME(CLSID_CRegTreeOptions, NTDDI_MIN, NTDDI_VISTASP4),
203 {
204 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IRegTreeOptions },
207 }
208 },
209 {
210 ID_NAME(CLSID_CommBand, NTDDI_MIN, NTDDI_VISTASP4),
211 {
212 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IWinEventHandler },
213 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDeskBand },
214 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDockingWindow },
217 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObject },
220 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IOleCommandTarget },
221 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IServiceProvider },
222 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu },
226 },
227 },
228 {
229 ID_NAME(CLSID_DeskBar, NTDDI_MIN, NTDDI_WS03SP4),
230 {
231 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IOleCommandTarget },
232 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IServiceProvider },
233 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IDeskBar },
235 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IInputObjectSite },
236 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IInputObject },
237 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IDockingWindow },
244 }
245 },
246 {
247 ID_NAME(CLSID_DeskBarApp, NTDDI_MIN, NTDDI_VISTASP4),
248 {
249 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IOleCommandTarget },
250 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IServiceProvider },
251 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDeskBar },
253 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObjectSite },
254 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObject },
255 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDockingWindow },
262 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu3 },
263 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu2 },
264 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu },
265 }
266 },
267 {
268 ID_NAME(CLSID_GlobalFolderSettings, NTDDI_MIN, NTDDI_VISTASP4),
269 {
270 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IGlobalFolderSettings },
272 },
273 L"Both"
274 },
275 {
276 ID_NAME(CLSID_ImageListCache, NTDDI_MIN, NTDDI_WS03SP4),
277 {
279 },
280 L"Both"
281 },
282 {
283 ID_NAME(CLSID_ImgCtxThumbnailExtractor, NTDDI_MIN, NTDDI_WS03SP4),
284 {
285 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IExtractImage2 },
286 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IExtractImage },
289 },
290 L"Both"
291 },
292 {
293 ID_NAME(CLSID_InternetToolbar, NTDDI_MIN, NTDDI_VISTASP4),
294 {
295 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IExplorerToolbar },
296 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IShellChangeNotify },
297
299 { NTDDI_MIN, NTDDI_VISTASP4, &DIID_DWebBrowserEvents },
300 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IOleCommandTarget },
301 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IServiceProvider },
302 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDeskBar },
304 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObjectSite },
305 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObject },
306 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDockingWindow },
310
311 { NTDDI_VISTA, NTDDI_VISTASP4, &IID_IBandHost },
312 }
313 },
314 {
315 ID_NAME(CLSID_ProgressDialog, NTDDI_MIN, NTDDI_WS03SP4),
316 {
317 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IProgressDialog },
320 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IActionProgressDialog },
321 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IActionProgress },
323 },
324 L"Both"
325 },
326 {
327 ID_NAME(CLSID_RebarBandSite, NTDDI_MIN, NTDDI_VISTASP4),
328 {
330 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IBandSite },
331 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObjectSite },
332 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObject },
333 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDeskBarClient },
335 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IWinEventHandler },
338 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDropTarget },
339 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IServiceProvider },
340 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IBandSiteHelper },
341 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IOleCommandTarget },
342 }
343 },
344 {
345 ID_NAME(CLSID_SH_AddressBand, NTDDI_MIN, NTDDI_VISTASP4),
346 {
347 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IAddressBand },
348
349 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDeskBand },
350 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDockingWindow },
354 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObject },
357 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IOleCommandTarget },
358 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IServiceProvider },
359 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IWinEventHandler },
360 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObjectSite },
361
362 { NTDDI_VISTA, NTDDI_VISTASP4, &IID_IShellChangeNotify },
363 }
364 },
365 {
366 ID_NAME(CLSID_SH_SearchBand, NTDDI_MIN, NTDDI_VISTASP4),
367 {
370 { NTDDI_MIN, NTDDI_WS03SP4, &IID_ISearchBar },
371 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IFileSearchBand },
372
375 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDeskBand },
376 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IDockingWindow },
377 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IInputObject },
379 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu },
380 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IServiceProvider },
382 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IBandNavigate },
384
385 { NTDDI_VISTA, NTDDI_VISTASP4, &IID_IOleCommandTarget },
388 { NTDDI_VISTA, NTDDI_VISTASP4, &IID_IWinEventHandler },
389 }
390 },
391 {
392 ID_NAME(CLSID_SharedTaskScheduler, NTDDI_MIN, NTDDI_VISTASP4),
393 {
394 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IShellTaskScheduler },
396 }
397 },
398 {
399 ID_NAME(CLSID_ShellSearchExt, NTDDI_MIN, NTDDI_VISTASP4),
400 {
401 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IContextMenu },
404 }
405 },
406 {
407 ID_NAME(CLSID_ShellTaskScheduler, NTDDI_MIN, NTDDI_VISTASP4),
408 {
409 { NTDDI_MIN, NTDDI_VISTASP4, &IID_IShellTaskScheduler },
411 },
412 },
413 {
414 ID_NAME(CLSID_UserAssist, NTDDI_MIN, NTDDI_VISTASP4),
415 {
417 },
418 L"Both"
419 },
420 {
421 ID_NAME(CLSID_WebSearchExt, NTDDI_MIN, NTDDI_WS03SP4),
422 {
423 { NTDDI_MIN, NTDDI_WS03SP4, &IID_IContextMenu },
426 },
427 },
428};
429
430START_TEST(browseui)
431{
432 TestClassesEx(L"browseui",
435 FALSE);
436}
#define RTL_NUMBER_OF(x)
Definition: RtlRegistry.c:12
#define NTDDI_MIN
Definition: apitest.h:20
#define START_TEST(x)
Definition: atltest.h:75
const GUID IID_IUnknown
static const CLASS_AND_INTERFACES ExpectedInterfaces[]
Definition: browseui.c:14
VOID TestClassesEx(_In_ PCWSTR ModuleName, _In_ PCCLASS_AND_INTERFACES ExpectedInterfaces, _In_ INT ExpectedInterfaceCount, _In_ ULONG MinimumNTDDIVersion, _In_ ULONG MaximumNTDDIVersion, _In_ BOOLEAN IsWinRT)
Definition: com_apitest.c:779
#define ID_NAME(c)
Definition: com_apitest.c:38
#define FALSE
Definition: types.h:117
#define L(x)
Definition: resources.c:13
const IID IID_IObjectWithSite
const GUID IID_IOleContainer
const GUID IID_IOleInPlaceFrame
const GUID IID_IPropertyBag
const GUID IID_IOleWindow
const GUID IID_IEnumString
const GUID IID_IDispatch
const GUID IID_IPersistStreamInit
const GUID IID_IPersistFile
const GUID IID_IPersist
Definition: proxy.cpp:14
const GUID IID_IPersistStream
Definition: proxy.cpp:13
const GUID IID_IPersistPropertyBag
Definition: proxy.cpp:11
#define NTDDI_VISTA
Definition: sdkddkver.h:103
#define NTDDI_VISTASP4
Definition: sdkddkver.h:107
#define NTDDI_WS03SP4
Definition: sdkddkver.h:96