Reactos
at master 131 lines 6.4 kB view raw
1/* 2 * PROJECT: ReactOS API Tests 3 * LICENSE: MIT (https://spdx.org/licenses/MIT) 4 * PURPOSE: COM interface test for explorerframe server 5 * COPYRIGHT: Copyright 2025 Carl Bialorucki <carl.bialorucki@reactos.org> 6 */ 7 8#include "com_apitest.h" 9 10#define NDEBUG 11#include <debug.h> 12 13static const CLASS_AND_INTERFACES ExpectedInterfaces[] = 14{ 15 { 16 ID_NAME(CLSID_BandSiteMenu, NTDDI_WIN7, NTDDI_MAX), 17 { 18 { NTDDI_WIN7, NTDDI_MAX, &IID_IContextMenu3 }, 19 { NTDDI_WIN7, NTDDI_MAX, &IID_IContextMenu2 }, 20 { NTDDI_WIN7, NTDDI_MAX, &IID_IContextMenu }, 21 { NTDDI_WIN7, NTDDI_MAX, &IID_IUnknown }, 22 { NTDDI_WIN7, NTDDI_MAX, &IID_IShellService }, 23 } 24 }, 25 { 26 ID_NAME(CLSID_CDockingBarPropertyBag, NTDDI_WIN7, NTDDI_MAX), 27 { 28 { NTDDI_WIN7, NTDDI_MAX, &IID_IPropertyBag }, 29 { NTDDI_WIN7, NTDDI_MAX, &IID_IUnknown }, 30 }, 31 }, 32 { 33 ID_NAME(CLSID_DeskBarApp, NTDDI_WIN7, NTDDI_MAX), 34 { 35 { NTDDI_WIN7, NTDDI_MAX, &IID_IOleCommandTarget }, 36 { NTDDI_WIN7, NTDDI_MAX, &IID_IServiceProvider }, 37 { NTDDI_WIN7, NTDDI_MAX, &IID_IDeskBar }, 38 { NTDDI_WIN7, NTDDI_MAX, &IID_IOleWindow }, 39 { NTDDI_WIN7, NTDDI_MAX, &IID_IInputObjectSite }, 40 { NTDDI_WIN7, NTDDI_MAX, &IID_IInputObject }, 41 { NTDDI_WIN7, NTDDI_MAX, &IID_IDockingWindow }, 42 { NTDDI_WIN7, NTDDI_MAX, &IID_IObjectWithSite }, 43 { NTDDI_WIN7, NTDDI_MAX, &IID_IPersistStreamInit }, 44 { NTDDI_WIN7, NTDDI_MAX, &IID_IPersistStream }, 45 { NTDDI_WIN7, NTDDI_MAX, &IID_IPersist }, 46 { NTDDI_WIN7, NTDDI_MAX, &IID_IPersistPropertyBag }, 47 { NTDDI_WIN7, NTDDI_MAX, &IID_IUnknown }, 48 { NTDDI_WIN7, NTDDI_MAX, &IID_IContextMenu3 }, 49 { NTDDI_WIN7, NTDDI_MAX, &IID_IContextMenu2 }, 50 { NTDDI_WIN7, NTDDI_MAX, &IID_IContextMenu }, 51 } 52 }, 53 { 54 ID_NAME(CLSID_GlobalFolderSettings, NTDDI_WIN7, NTDDI_MAX), 55 { 56 { NTDDI_WIN7, NTDDI_MAX, &IID_IGlobalFolderSettings }, 57 { NTDDI_WIN7, NTDDI_MAX, &IID_IUnknown }, 58 }, 59 L"Both" 60 }, 61 { 62 ID_NAME(CLSID_InternetToolbar, NTDDI_WIN7, NTDDI_MAX), 63 { 64 { NTDDI_WIN7, NTDDI_MAX, &IID_IOleCommandTarget }, 65 { NTDDI_WIN7, NTDDI_MAX, &IID_IServiceProvider }, 66 { NTDDI_WIN7, NTDDI_MAX, &IID_IDeskBar }, 67 { NTDDI_WIN7, NTDDI_MAX, &IID_IOleWindow }, 68 { NTDDI_WIN7, NTDDI_MAX, &IID_IInputObjectSite }, 69 { NTDDI_WIN7, NTDDI_MAX, &IID_IInputObject }, 70 { NTDDI_WIN7, NTDDI_MAX, &IID_IDockingWindow }, 71 { NTDDI_WIN7, NTDDI_MAX, &IID_IObjectWithSite }, 72 { NTDDI_WIN7, NTDDI_MAX, &IID_IUnknown }, 73 { NTDDI_WIN7, NTDDI_MAX, &IID_IPersistStreamInit }, 74 { NTDDI_WIN7, NTDDI_MAX, &IID_IBandHost }, 75 } 76 }, 77 { 78 ID_NAME(CLSID_RebarBandSite, NTDDI_WIN7, NTDDI_MAX), 79 { 80 { NTDDI_WIN7, NTDDI_MAX, &IID_IUnknown }, 81 { NTDDI_WIN7, NTDDI_MAX, &IID_IBandSite }, 82 { NTDDI_WIN7, NTDDI_MAX, &IID_IInputObjectSite }, 83 { NTDDI_WIN7, NTDDI_MAX, &IID_IInputObject }, 84 { NTDDI_WIN7, NTDDI_MAX, &IID_IDeskBarClient }, 85 { NTDDI_WIN7, NTDDI_MAX, &IID_IOleWindow }, 86 { NTDDI_WIN7, NTDDI_MAX, &IID_IWinEventHandler }, 87 { NTDDI_WIN7, NTDDI_MAX, &IID_IPersistStream }, 88 { NTDDI_WIN7, NTDDI_MAX, &IID_IPersist }, 89 { NTDDI_WIN7, NTDDI_MAX, &IID_IDropTarget }, 90 { NTDDI_WIN7, NTDDI_MAX, &IID_IServiceProvider }, 91 { NTDDI_WIN7, NTDDI_MAX, &IID_IBandSiteHelper }, 92 { NTDDI_WIN7, NTDDI_MAX, &IID_IOleCommandTarget }, 93 } 94 }, 95 { 96 ID_NAME(CLSID_SH_AddressBand, NTDDI_WIN7, NTDDI_MAX), 97 { 98 { NTDDI_WIN7, NTDDI_MAX, &IID_IDeskBand }, 99 { NTDDI_WIN7, NTDDI_MAX, &IID_IDockingWindow }, 100 { NTDDI_WIN7, NTDDI_MAX, &IID_IOleWindow }, 101 { NTDDI_WIN7, NTDDI_MAX, &IID_IUnknown }, 102 { NTDDI_WIN7, NTDDI_MAX, &IID_IObjectWithSite }, 103 { NTDDI_WIN7, NTDDI_MAX, &IID_IInputObject }, 104 { NTDDI_WIN7, NTDDI_MAX, &IID_IPersistStream }, 105 { NTDDI_WIN7, NTDDI_MAX, &IID_IPersist }, 106 { NTDDI_WIN7, NTDDI_MAX, &IID_IOleCommandTarget }, 107 { NTDDI_WIN7, NTDDI_MAX, &IID_IServiceProvider }, 108 { NTDDI_WIN7, NTDDI_MAX, &IID_IWinEventHandler }, 109 { NTDDI_WIN7, NTDDI_MAX, &IID_IInputObjectSite }, 110 { NTDDI_WIN7, NTDDI_MAX, &IID_IShellChangeNotify }, 111 } 112 }, 113 { 114 ID_NAME(CLSID_TaskbarList, NTDDI_WIN7, NTDDI_MAX), 115 { 116 { NTDDI_WIN7, NTDDI_MAX, &IID_ITaskbarList3 }, 117 { NTDDI_WIN7, NTDDI_MAX, &IID_ITaskbarList4 }, 118 { NTDDI_WIN7, NTDDI_MAX, &IID_ITaskbarList2 }, 119 { NTDDI_WIN7, NTDDI_MAX, &IID_ITaskbarList }, 120 { NTDDI_WIN7, NTDDI_MAX, &IID_IUnknown }, 121 } 122 }, 123}; 124 125START_TEST(explorerframe) 126{ 127 TestClassesEx(L"explorerframe", 128 ExpectedInterfaces, RTL_NUMBER_OF(ExpectedInterfaces), 129 NTDDI_WIN7, NTDDI_MAX, 130 FALSE); 131}