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>
8 #include "com_apitest.h"
13 static const CLASS_AND_INTERFACES ExpectedInterfaces
[] =
16 ID_NAME(CLSID_ExplorerBand
),
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
},
36 ID_NAME(CLSID_FontsFolderShortcut
),
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
},
56 #if 0 // E_OUTOFMEMORY?
58 ID_NAME(CLSID_ShellDispatchInproc
),
60 { 0x0, &IID_IUnknown
},
65 ID_NAME(CLSID_MruLongList
),
67 { 0x0, &IID_IUnknown
},
71 ID_NAME(CLSID_TaskbarList
),
73 { 0x0, &IID_ITaskbarList2
},
74 { 0x0, &IID_ITaskbarList
},
75 { 0x0, &IID_IUnknown
},
79 static const INT ExpectedInterfaceCount
= RTL_NUMBER_OF(ExpectedInterfaces
);
83 TestClasses(L
"shdocvw", ExpectedInterfaces
, ExpectedInterfaceCount
);