Module: wine Branch: master Commit: 2c2b50a4ed5143fea37b3c3c572c9d09069a60df URL: http://source.winehq.org/git/wine.git/?a=commit;h=2c2b50a4ed5143fea37b3c3c57...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Sun Dec 11 08:13:51 2016 +0300
scrrun/tests: Test to query for IUnknown from IProvideClassInfo.
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/scrrun/tests/dictionary.c | 6 ++++++ dlls/scrrun/tests/filesystem.c | 6 ++++++ 2 files changed, 12 insertions(+)
diff --git a/dlls/scrrun/tests/dictionary.c b/dlls/scrrun/tests/dictionary.c index 78922b7..658dd66 100644 --- a/dlls/scrrun/tests/dictionary.c +++ b/dlls/scrrun/tests/dictionary.c @@ -36,6 +36,7 @@ static void _test_provideclassinfo(IDispatch *disp, const GUID *guid, int line) IProvideClassInfo *classinfo; TYPEATTR *attr; ITypeInfo *ti; + IUnknown *unk; HRESULT hr;
hr = IDispatch_QueryInterface(disp, &IID_IProvideClassInfo, (void **)&classinfo); @@ -50,6 +51,11 @@ static void _test_provideclassinfo(IDispatch *disp, const GUID *guid, int line) ok_(__FILE__,line) (IsEqualGUID(&attr->guid, guid), "Unexpected typeinfo %s, expected %s\n", wine_dbgstr_guid(&attr->guid), wine_dbgstr_guid(guid));
+ hr = IProvideClassInfo_QueryInterface(classinfo, &IID_IUnknown, (void **)&unk); + ok(hr == S_OK, "Failed to QI for IUnknown.\n"); + ok(unk == (IUnknown *)disp, "Got unk %p, original %p\n", unk, disp); + IUnknown_Release(unk); + IProvideClassInfo_Release(classinfo); ITypeInfo_ReleaseTypeAttr(ti, attr); ITypeInfo_Release(ti); diff --git a/dlls/scrrun/tests/filesystem.c b/dlls/scrrun/tests/filesystem.c index 5516099..57aacf6 100644 --- a/dlls/scrrun/tests/filesystem.c +++ b/dlls/scrrun/tests/filesystem.c @@ -106,6 +106,7 @@ static void _test_provideclassinfo(IDispatch *disp, const GUID *guid, int line) IProvideClassInfo *classinfo; TYPEATTR *attr; ITypeInfo *ti; + IUnknown *unk; HRESULT hr;
hr = IDispatch_QueryInterface(disp, &IID_IProvideClassInfo, (void **)&classinfo); @@ -120,6 +121,11 @@ static void _test_provideclassinfo(IDispatch *disp, const GUID *guid, int line) ok_(__FILE__,line) (IsEqualGUID(&attr->guid, guid), "Unexpected typeinfo %s, expected %s\n", wine_dbgstr_guid(&attr->guid), wine_dbgstr_guid(guid));
+ hr = IProvideClassInfo_QueryInterface(classinfo, &IID_IUnknown, (void **)&unk); + ok(hr == S_OK, "Failed to QI for IUnknown.\n"); + ok(unk == (IUnknown *)disp, "Got unk %p, original %p.\n", unk, disp); + IUnknown_Release(unk); + IProvideClassInfo_Release(classinfo); ITypeInfo_ReleaseTypeAttr(ti, attr); ITypeInfo_Release(ti);