68e42d2ae1c83cd995848e6daa49be695654af66
2 * PROJECT: ReactOS api tests
3 * LICENSE: LGPLv2.1+ - See COPYING.LIB in the top level directory
4 * PURPOSE: Test for CMyComputer
5 * PROGRAMMER: Thomas Faber <thomas.faber@reactos.org>
15 #include <shellutils.h>
20 _In_ IShellFolder2
*psf2
)
23 CComPtr
<IDropTarget
> pdt
;
24 CComPtr
<IDropTarget
> pdt_2
;
25 CComPtr
<IContextMenu
> pcm
;
26 CComPtr
<IContextMenu
> pcm_2
;
27 CComPtr
<IShellView
> psv
;
28 CComPtr
<IShellView
> psv_2
;
30 hr
= psf2
->CreateViewObject(NULL
, IID_PPV_ARG(IDropTarget
, &pdt
));
31 ok(hr
== S_OK
, "hr = %lx\n", hr
);
33 hr
= psf2
->CreateViewObject(NULL
, IID_PPV_ARG(IDropTarget
, &pdt_2
));
34 ok(hr
== S_OK
, "hr = %lx\n", hr
);
35 ok(pdt
!= pdt_2
, "Expected %p != %p\n", static_cast<PVOID
>(pdt
), static_cast<PVOID
>(pdt_2
));
37 hr
= psf2
->CreateViewObject(NULL
, IID_PPV_ARG(IContextMenu
, &pcm
));
38 ok(hr
== S_OK
, "hr = %lx\n", hr
);
40 hr
= psf2
->CreateViewObject(NULL
, IID_PPV_ARG(IContextMenu
, &pcm_2
));
41 ok(hr
== S_OK
, "hr = %lx\n", hr
);
42 ok(pcm
!= pcm_2
, "Expected %p != %p\n", static_cast<PVOID
>(pcm
), static_cast<PVOID
>(pcm_2
));
44 hr
= psf2
->CreateViewObject(NULL
, IID_PPV_ARG(IShellView
, &psv
));
45 ok(hr
== S_OK
, "hr = %lx\n", hr
);
47 hr
= psf2
->CreateViewObject(NULL
, IID_PPV_ARG(IShellView
, &psv_2
));
48 ok(hr
== S_OK
, "hr = %lx\n", hr
);
49 ok(psv
!= psv_2
, "Expected %p != %p\n", static_cast<PVOID
>(psv
), static_cast<PVOID
>(psv_2
));
52 START_TEST(CMyComputer
)
55 CComPtr
<IShellFolder2
> psf2
;
56 CComPtr
<IShellFolder2
> psf2_2
;
57 CComPtr
<IShellFolder
> psf
;
59 CoInitializeEx(NULL
, COINIT_APARTMENTTHREADED
);
61 hr
= CoCreateInstance(CLSID_MyComputer
,
64 IID_PPV_ARG(IShellFolder2
, &psf2
));
65 ok(hr
== S_OK
, "hr = %lx\n", hr
);
68 skip("Could not instantiate CShellDesktop\n");
72 /* second create should give us a pointer to the same object */
73 hr
= CoCreateInstance(CLSID_MyComputer
,
76 IID_PPV_ARG(IShellFolder2
, &psf2_2
));
77 ok(hr
== S_OK
, "hr = %lx\n", hr
);
78 ok(psf2
== psf2_2
, "Expected %p == %p\n", static_cast<PVOID
>(psf2
), static_cast<PVOID
>(psf2_2
));
80 TestShellFolder(psf2
);