[BRANCHES]
[reactos.git] / rostests / apitests / com / shdocvw.c
1 /*
2 * PROJECT: ReactOS api tests
3 * LICENSE: GPLv2+ - See COPYING in the top level directory
4 * PURPOSE: COM interface test for shdocvw classes
5 * PROGRAMMER: Thomas Faber <thomas.faber@reactos.org>
6 */
7
8 #include "com_apitest.h"
9
10 #define NDEBUG
11 #include <debug.h>
12
13 static const CLASS_AND_INTERFACES ExpectedInterfaces[] =
14 {
15 {
16 ID_NAME(CLSID_ExplorerBand),
17 {
18 { -0xb4, &IID_IDeskBand },
19 { -0xb4, &IID_IDockingWindow },
20 { -0xb4, &IID_IOleWindow },
21 { -0xb0, &IID_IObjectWithSite },
22 { -0xa8, &IID_IInputObject },
23 { -0xa4, &IID_IPersistStream },
24 { -0xa4, &IID_IPersist },
25 { -0xa0, &IID_IOleCommandTarget },
26 { -0x9c, &IID_IServiceProvider },
27 { -0x84, &IID_IContextMenu },
28 { -0x80, &IID_IBandNavigate },
29 { -0x7c, &IID_IWinEventHandler },
30 { -0x78, &IID_INamespaceProxy },
31 { 0x0, &IID_IDispatch },
32 { 0x0, &IID_IUnknown },
33 }
34 },
35 {
36 ID_NAME(CLSID_FontsFolderShortcut),
37 {
38 { 0x0, &IID_IShellFolder2 },
39 { 0x0, &IID_IShellFolder },
40 { 0x0, &IID_IUnknown },
41 { 0x4, &IID_IPersistFolder3 },
42 { 0x4, &IID_IPersistFolder2 },
43 { 0x4, &IID_IPersistFolder },
44 { 0x4, &IID_IPersist },
45 { 0x8, &IID_IShellLinkA },
46 { 0xc, &IID_IShellLinkW },
47 { 0x10, &IID_IPersistFile },
48 { 0x14, &IID_IExtractIconW },
49 { 0x18, &IID_IQueryInfo },
50 { 0x20, &IID_IPersistStream },
51 { 0x20, &IID_IPersistStreamInit },
52 { 0x24, &IID_IPersistPropertyBag },
53 { 0x28, &IID_IBrowserFrameOptions },
54 }
55 },
56 #if 0 // E_OUTOFMEMORY?
57 {
58 ID_NAME(CLSID_ShellDispatchInproc),
59 {
60 { 0x0, &IID_IUnknown },
61 }
62 },
63 #endif
64 {
65 ID_NAME(CLSID_TaskbarList),
66 {
67 { 0x0, &IID_ITaskbarList2 },
68 { 0x0, &IID_ITaskbarList },
69 { 0x0, &IID_IUnknown },
70 }
71 },
72 };
73 static const INT ExpectedInterfaceCount = RTL_NUMBER_OF(ExpectedInterfaces);
74
75 START_TEST(shdocvw)
76 {
77 TestClasses(L"shdocvw", ExpectedInterfaces, ExpectedInterfaceCount);
78 }