Module: wine Branch: master Commit: fdc4d40d18231d5297e7b34c00ac7aeaba26644f URL: http://source.winehq.org/git/wine.git/?a=commit;h=fdc4d40d18231d5297e7b34c00...
Author: Jacek Caban jacek@codeweavers.com Date: Fri May 10 10:42:35 2013 +0200
ole32: Added more default handler QueryInterface tests.
---
dlls/ole32/tests/defaulthandler.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/dlls/ole32/tests/defaulthandler.c b/dlls/ole32/tests/defaulthandler.c index 5da7ced..e524f97 100644 --- a/dlls/ole32/tests/defaulthandler.c +++ b/dlls/ole32/tests/defaulthandler.c @@ -54,8 +54,15 @@ expect_ ## func = called_ ## func = FALSE; \ }while(0)
+#define CHECK_NOT_CALLED(func) \ + do { \ + ok(!called_ ## func, "unexpected " #func "\n"); \ + expect_ ## func = called_ ## func = FALSE; \ + }while(0) + DEFINE_EXPECT(CF_QueryInterface_ClassFactory); DEFINE_EXPECT(CF_CreateInstance); +DEFINE_EXPECT(CF_QueryInterface_IMarshal);
static const char *debugstr_guid(REFIID riid) { @@ -178,6 +185,7 @@ static HRESULT WINAPI ClassFactory_QueryInterface(IClassFactory *iface, REFIID r *ppv = iface; return S_OK; }else if(IsEqualGUID(riid, &IID_IMarshal)) { + CHECK_EXPECT(CF_QueryInterface_IMarshal); *ppv = NULL; return E_NOINTERFACE; }else if(IsEqualGUID(riid, &IID_IClassFactory)) { @@ -262,11 +270,15 @@ static void test_default_handler_run(void) ok(hres == REGDB_E_CLASSNOTREG, "Run returned: %x, expected REGDB_E_CLASSNOTREG\n", hres); IRunnableObject_Release(ro);
+ SET_EXPECT(CF_QueryInterface_IMarshal); CoRevokeClassObject(class_reg); + todo_wine CHECK_CALLED(CF_QueryInterface_IMarshal);
+ SET_EXPECT(CF_QueryInterface_IMarshal); hres = CoRegisterClassObject(&test_server_clsid, (IUnknown*)&ClassFactory, CLSCTX_LOCAL_SERVER, 0, &class_reg); ok(hres == S_OK, "CoRegisterClassObject failed: %x\n", hres); + todo_wine CHECK_NOT_CALLED(CF_QueryInterface_IMarshal);
hres = OleCreateDefaultHandler(&test_server_clsid, NULL, &IID_IUnknown, (void**)&unk); ok(hres == S_OK, "OleCreateDefaultHandler failed: %x\n", hres); @@ -283,7 +295,9 @@ static void test_default_handler_run(void) CHECK_CALLED(CF_CreateInstance); IRunnableObject_Release(ro);
+ SET_EXPECT(CF_QueryInterface_IMarshal); CoRevokeClassObject(class_reg); + todo_wine CHECK_CALLED(CF_QueryInterface_IMarshal); }
START_TEST(defaulthandler)