Robert Shearman : ole32: Add a test for OleLoad.
Alexandre Julliard
julliard at wine.codeweavers.com
Thu Sep 7 05:07:19 CDT 2006
Module: wine
Branch: master
Commit: 03510be55be240aede90d113007dc8e3f14f3625
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=03510be55be240aede90d113007dc8e3f14f3625
Author: Robert Shearman <rob at 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);
More information about the wine-cvs
mailing list