[PATCH] scrrun/tests: Test to query for IUnknown from IProvideClassInfo
Nikolay Sivov
nsivov at codeweavers.com
Sat Dec 10 23:13:51 CST 2016
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
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);
--
2.10.2
More information about the wine-patches
mailing list