2013-07-07 09:10:31 +00:00
|
|
|
/*
|
|
|
|
* PROJECT: ReactOS api tests
|
|
|
|
* LICENSE: GPLv2+ - See COPYING in the top level directory
|
|
|
|
* PURPOSE: COM interface test for shdocvw classes
|
2013-10-12 16:05:54 +00:00
|
|
|
* PROGRAMMER: Thomas Faber <thomas.faber@reactos.org>
|
2013-07-07 09:10:31 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#include "com_apitest.h"
|
|
|
|
|
|
|
|
#define NDEBUG
|
|
|
|
#include <debug.h>
|
|
|
|
|
|
|
|
static const CLASS_AND_INTERFACES ExpectedInterfaces[] =
|
|
|
|
{
|
2015-04-19 22:50:25 +00:00
|
|
|
{
|
|
|
|
ID_NAME(CLSID_AdminFolderShortcut),
|
|
|
|
{
|
|
|
|
{ 0x0, &IID_IShellFolder2 },
|
|
|
|
{ 0x0, &IID_IShellFolder },
|
|
|
|
{ 0x0, &IID_IUnknown },
|
|
|
|
{ 0x4, &IID_IPersistFolder3 },
|
|
|
|
{ 0x4, &IID_IPersistFolder2 },
|
|
|
|
{ 0x4, &IID_IPersistFolder },
|
|
|
|
{ 0x4, &IID_IPersist },
|
|
|
|
{ 0x8, &IID_IShellLinkA },
|
|
|
|
{ 0xc, &IID_IShellLinkW },
|
|
|
|
{ 0x10, &IID_IPersistFile },
|
|
|
|
{ 0x14, &IID_IExtractIconW },
|
|
|
|
{ 0x18, &IID_IQueryInfo },
|
|
|
|
{ 0x20, &IID_IPersistStream },
|
|
|
|
{ 0x20, &IID_IPersistStreamInit },
|
|
|
|
{ 0x24, &IID_IPersistPropertyBag },
|
|
|
|
{ 0x28, &IID_IBrowserFrameOptions },
|
|
|
|
}
|
|
|
|
},
|
2013-07-13 08:07:42 +00:00
|
|
|
{
|
|
|
|
ID_NAME(CLSID_ExplorerBand),
|
|
|
|
{
|
|
|
|
{ -0xb4, &IID_IDeskBand },
|
|
|
|
{ -0xb4, &IID_IDockingWindow },
|
|
|
|
{ -0xb4, &IID_IOleWindow },
|
|
|
|
{ -0xb0, &IID_IObjectWithSite },
|
|
|
|
{ -0xa8, &IID_IInputObject },
|
|
|
|
{ -0xa4, &IID_IPersistStream },
|
|
|
|
{ -0xa4, &IID_IPersist },
|
|
|
|
{ -0xa0, &IID_IOleCommandTarget },
|
|
|
|
{ -0x9c, &IID_IServiceProvider },
|
|
|
|
{ -0x84, &IID_IContextMenu },
|
|
|
|
{ -0x80, &IID_IBandNavigate },
|
|
|
|
{ -0x7c, &IID_IWinEventHandler },
|
|
|
|
{ -0x78, &IID_INamespaceProxy },
|
|
|
|
{ 0x0, &IID_IDispatch },
|
|
|
|
{ 0x0, &IID_IUnknown },
|
|
|
|
}
|
|
|
|
},
|
2013-07-07 09:10:31 +00:00
|
|
|
{
|
|
|
|
ID_NAME(CLSID_FontsFolderShortcut),
|
|
|
|
{
|
|
|
|
{ 0x0, &IID_IShellFolder2 },
|
|
|
|
{ 0x0, &IID_IShellFolder },
|
|
|
|
{ 0x0, &IID_IUnknown },
|
|
|
|
{ 0x4, &IID_IPersistFolder3 },
|
|
|
|
{ 0x4, &IID_IPersistFolder2 },
|
|
|
|
{ 0x4, &IID_IPersistFolder },
|
|
|
|
{ 0x4, &IID_IPersist },
|
|
|
|
{ 0x8, &IID_IShellLinkA },
|
|
|
|
{ 0xc, &IID_IShellLinkW },
|
|
|
|
{ 0x10, &IID_IPersistFile },
|
|
|
|
{ 0x14, &IID_IExtractIconW },
|
|
|
|
{ 0x18, &IID_IQueryInfo },
|
|
|
|
{ 0x20, &IID_IPersistStream },
|
|
|
|
{ 0x20, &IID_IPersistStreamInit },
|
|
|
|
{ 0x24, &IID_IPersistPropertyBag },
|
2013-07-13 08:07:42 +00:00
|
|
|
{ 0x28, &IID_IBrowserFrameOptions },
|
2013-07-07 09:10:31 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
#if 0 // E_OUTOFMEMORY?
|
|
|
|
{
|
|
|
|
ID_NAME(CLSID_ShellDispatchInproc),
|
|
|
|
{
|
2015-04-19 21:28:09 +00:00
|
|
|
{ 0x0, &IID_IUnknown },
|
2013-07-07 09:10:31 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
#endif
|
2015-02-14 12:59:16 +00:00
|
|
|
{
|
|
|
|
ID_NAME(CLSID_MruLongList),
|
|
|
|
{
|
|
|
|
{ 0x0, &IID_IUnknown },
|
|
|
|
}
|
|
|
|
},
|
2013-07-07 09:10:31 +00:00
|
|
|
{
|
|
|
|
ID_NAME(CLSID_TaskbarList),
|
|
|
|
{
|
|
|
|
{ 0x0, &IID_ITaskbarList2 },
|
|
|
|
{ 0x0, &IID_ITaskbarList },
|
|
|
|
{ 0x0, &IID_IUnknown },
|
|
|
|
}
|
|
|
|
},
|
|
|
|
};
|
|
|
|
static const INT ExpectedInterfaceCount = RTL_NUMBER_OF(ExpectedInterfaces);
|
|
|
|
|
|
|
|
START_TEST(shdocvw)
|
|
|
|
{
|
|
|
|
TestClasses(L"shdocvw", ExpectedInterfaces, ExpectedInterfaceCount);
|
|
|
|
}
|