From 6ebe1ec4d315f9cf3c49adf6ca5424f4e1a0b1f0 Mon Sep 17 00:00:00 2001 From: Piotr Caban Date: Mon, 22 Feb 2010 23:14:12 +0100 Subject: [PATCH] oleaut32/tests: Added VT_PTR tests in function arguments. --- dlls/oleaut32/tests/typelib.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/dlls/oleaut32/tests/typelib.c b/dlls/oleaut32/tests/typelib.c index b3918665428..bcf959c9dd2 100644 --- a/dlls/oleaut32/tests/typelib.c +++ b/dlls/oleaut32/tests/typelib.c @@ -986,6 +986,7 @@ static void test_CreateTypeLib(void) { FUNCDESC funcdesc; ELEMDESC elemdesc[5]; PARAMDESCEX paramdescex; + TYPEDESC typedesc1, typedesc2; HRESULT hres; trace("CreateTypeLib tests\n"); @@ -1053,13 +1054,25 @@ static void test_CreateTypeLib(void) { hres = ICreateTypeInfo_AddFuncDesc(createti, 1, &funcdesc); ok(hres == S_OK, "got %08x\n", hres); + elemdesc[0].tdesc.vt = VT_PTR; + elemdesc[0].tdesc.lptdesc = &typedesc1; + typedesc1.vt = VT_BSTR; + funcdesc.cParams = 1; + funcdesc.lprgelemdescParam = elemdesc; + hres = ICreateTypeInfo_AddFuncDesc(createti, 4, &funcdesc); + ok(hres == S_OK, "got %08x\n", hres); + + elemdesc[0].tdesc.lptdesc = &typedesc2; + typedesc2.vt = VT_PTR; + typedesc2.lptdesc = &typedesc1; + hres = ICreateTypeInfo_AddFuncDesc(createti, 4, &funcdesc); + ok(hres == S_OK, "got %08x\n", hres); + elemdesc[0].tdesc.vt = VT_INT; elemdesc[0].paramdesc.wParamFlags = PARAMFLAG_FHASDEFAULT; elemdesc[0].paramdesc.pparamdescex = ¶mdescex; V_VT(¶mdescex.varDefaultValue) = VT_INT; V_INT(¶mdescex.varDefaultValue) = 0x123; - funcdesc.lprgelemdescParam = elemdesc; - funcdesc.cParams = 1; hres = ICreateTypeInfo_AddFuncDesc(createti, 3, &funcdesc); ok(hres == S_OK, "got %08x\n", hres);