Module: wine Branch: master Commit: 03510be55be240aede90d113007dc8e3f14f3625 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=03510be55be240aede90d113...
Author: Robert Shearman rob@codeweavers.com Date: Thu Aug 31 17:19:34 2006 +0100
ole32: Add a test for OleLoad.
---
dlls/ole32/tests/ole2.c | 33 +++++++++++++++++++++++++++++++++ 1 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/dlls/ole32/tests/ole2.c b/dlls/ole32/tests/ole2.c index e9055ce..c7a3023 100644 --- a/dlls/ole32/tests/ole2.c +++ b/dlls/ole32/tests/ole2.c @@ -759,6 +759,37 @@ static void test_OleCreate(IStorage *pSt trace("end\n"); }
+static void test_OleLoad(IStorage *pStorage) +{ + HRESULT hr; + IOleObject *pObject; + + static const char *methods_oleload[] = + { + "OleObject_QueryInterface", + "OleObject_AddRef", + "OleObject_QueryInterface", + "OleObject_AddRef", + "OleObject_GetMiscStatus", + "OleObject_QueryInterface", + "OleObjectPersistStg_AddRef", + "OleObjectPersistStg_Load", + "OleObjectPersistStg_Release", + "OleObject_SetClientSite", + "OleObject_Release", + "OleObject_QueryInterface", + "OleObject_Release", + NULL + }; + + expected_method_list = methods_oleload; + trace("OleLoad:\n"); + hr = OleLoad(pStorage, &IID_IOleObject, (IOleClientSite *)0xdeadbeef, (void **)&pObject); + ok_ole_success(hr, "OleLoad"); + IOleObject_Release(pObject); + ok(!*expected_method_list, "Method sequence starting from %s not called\n", *expected_method_list); +} + START_TEST(ole2) { DWORD dwRegister; @@ -780,6 +811,8 @@ START_TEST(ole2) ok_ole_success(hr, "IStorage_Stat"); ok(IsEqualCLSID(&CLSID_Equation3, &statstg.clsid), "Wrong CLSID in storage\n");
+ test_OleLoad(pStorage); + IStorage_Release(pStorage);
hr = CoRevokeClassObject(dwRegister);