[PATCH v2] oleaut32/tests: Mark some tmarshal tests as todo on x64 and ARM

Alex Henrie alexhenrie24 at gmail.com
Mon Feb 12 20:48:59 CST 2018


Signed-off-by: Alex Henrie <alexhenrie24 at gmail.com>
---
 dlls/oleaut32/tests/tmarshal.c | 68 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/dlls/oleaut32/tests/tmarshal.c b/dlls/oleaut32/tests/tmarshal.c
index 67b8e22642..b716461bd6 100644
--- a/dlls/oleaut32/tests/tmarshal.c
+++ b/dlls/oleaut32/tests/tmarshal.c
@@ -1305,6 +1305,9 @@ static void test_typelibmarshal(void)
 
     IStream_Seek(pStream, ullZero, STREAM_SEEK_SET, NULL);
     hr = CoUnmarshalInterface(pStream, &IID_IKindaEnumWidget, (void **)&pKEW);
+#ifndef __i386__
+    todo_wine
+#endif
     ok_ole_success(hr, CoUnmarshalInterface);
     IStream_Release(pStream);
 
@@ -1331,6 +1334,9 @@ static void test_typelibmarshal(void)
     VariantInit(&varresult);
     hr = IDispatch_Invoke(pDispatch, DISPID_TM_NAME, &IID_NULL, LOCALE_NEUTRAL, DISPATCH_PROPERTYPUT, &dispparams, &varresult, &excepinfo, NULL);
     ok_ole_success(hr, IDispatch_Invoke);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(excepinfo.wCode == 0x0 && excepinfo.scode == S_OK,
         "EXCEPINFO differs from expected: wCode = 0x%x, scode = 0x%08x\n",
         excepinfo.wCode, excepinfo.scode);
@@ -1350,6 +1356,9 @@ static void test_typelibmarshal(void)
     VariantInit(&varresult);
     hr = IDispatch_Invoke(pDispatch, DISPID_TM_NAME, &IID_NULL, LOCALE_NEUTRAL, DISPATCH_PROPERTYGET, &dispparams, &varresult, &excepinfo, NULL);
     ok_ole_success(hr, IDispatch_Invoke);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(excepinfo.wCode == 0x0 && excepinfo.scode == S_OK,
         "EXCEPINFO differs from expected: wCode = 0x%x, scode = 0x%08x\n",
         excepinfo.wCode, excepinfo.scode);
@@ -1481,6 +1490,9 @@ static void test_typelibmarshal(void)
     hr = IDispatch_Invoke(pDispatch, DISPID_TM_CLONEDISPATCH, &IID_NULL, LOCALE_NEUTRAL, DISPATCH_PROPERTYGET, &dispparams, &varresult, &excepinfo, NULL);
     ok_ole_success(hr, IDispatch_Invoke);
 
+#ifndef __i386__
+    todo_wine
+#endif
     ok(excepinfo.wCode == 0x0 && excepinfo.scode == S_OK,
         "EXCEPINFO differs from expected: wCode = 0x%x, scode = 0x%08x\n",
         excepinfo.wCode, excepinfo.scode);
@@ -1498,6 +1510,9 @@ static void test_typelibmarshal(void)
     hr = IDispatch_Invoke(pDispatch, DISPID_TM_CLONECOCLASS, &IID_NULL, LOCALE_NEUTRAL, DISPATCH_PROPERTYGET, &dispparams, &varresult, &excepinfo, NULL);
     ok_ole_success(hr, IDispatch_Invoke);
 
+#ifndef __i386__
+    todo_wine
+#endif
     ok(excepinfo.wCode == 0x0 && excepinfo.scode == S_OK,
        "EXCEPINFO differs from expected: wCode = 0x%x, scode = 0x%08x\n",
        excepinfo.wCode, excepinfo.scode);
@@ -1514,6 +1529,9 @@ static void test_typelibmarshal(void)
     VariantInit(&varresult);
     hr = IDispatch_Invoke(pDispatch, DISPID_TM_COCLASS, &IID_NULL, LOCALE_NEUTRAL, DISPATCH_METHOD, &dispparams, &varresult, &excepinfo, NULL);
     todo_wine ok_ole_success(hr, IDispatch_Invoke);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(excepinfo.wCode == 0x0 && excepinfo.scode == S_OK,
         "EXCEPINFO differs from expected: wCode = 0x%x, scode = 0x%08x\n",
         excepinfo.wCode, excepinfo.scode);
@@ -1533,6 +1551,9 @@ static void test_typelibmarshal(void)
     hr = IDispatch_Invoke(pDispatch, DISPID_VALUE, &IID_NULL, LOCALE_NEUTRAL, DISPATCH_PROPERTYGET, &dispparams, &varresult, &excepinfo, NULL);
     ok_ole_success(hr, IDispatch_Invoke);
 
+#ifndef __i386__
+    todo_wine
+#endif
     ok(excepinfo.wCode == 0x0 && excepinfo.scode == S_OK,
         "EXCEPINFO differs from expected: wCode = 0x%x, scode = 0x%08x\n",
         excepinfo.wCode, excepinfo.scode);
@@ -1588,9 +1609,14 @@ static void test_typelibmarshal(void)
     V_I4(&vararg[1]) = 2;
     hr = IWidget_VariantCArray(pWidget, 2, vararg);
     ok_ole_success(hr, IWidget_VariantCArray);
+
+#ifdef __i386__
     todo_wine
+#endif
     ok(V_VT(&vararg[0]) == VT_I4 && V_I4(&vararg[0]) == 2, "vararg[0] = %d[%d]\n", V_VT(&vararg[0]), V_I4(&vararg[0]));
+#ifdef __i386__
     todo_wine
+#endif
     ok(V_VT(&vararg[1]) == VT_I4 && V_I4(&vararg[1]) == 3, "vararg[1] = %d[%d]\n", V_VT(&vararg[1]), V_I4(&vararg[1]));
 
     /* call VarArg */
@@ -1661,6 +1687,9 @@ static void test_typelibmarshal(void)
     VariantInit(&varresult);
     hr = IDispatch_Invoke(pDispatch, DISPID_TM_ERROR, &IID_NULL, LOCALE_NEUTRAL, DISPATCH_METHOD, &dispparams, NULL, &excepinfo, NULL);
     ok(hr == DISP_E_EXCEPTION, "IDispatch_Invoke should have returned DISP_E_EXCEPTION instead of 0x%08x\n", hr);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(excepinfo.wCode == 0x0 && excepinfo.scode == E_NOTIMPL,
         "EXCEPINFO differs from expected: wCode = 0x%x, scode = 0x%08x\n",
         excepinfo.wCode, excepinfo.scode);
@@ -1687,6 +1716,9 @@ static void test_typelibmarshal(void)
     hr = ITypeInfo_Invoke(pTypeInfo, &NonOleAutomation, DISPID_NOA_ERROR, DISPATCH_METHOD, &dispparams, &varresult, &excepinfo, NULL);
     ok(hr == DISP_E_EXCEPTION, "ITypeInfo_Invoke should have returned DISP_E_EXCEPTION instead of 0x%08x\n", hr);
     ok(V_VT(&varresult) == VT_EMPTY, "V_VT(&varresult) should be VT_EMPTY instead of %d\n", V_VT(&varresult));
+#ifndef __i386__
+    todo_wine
+#endif
     ok(excepinfo.wCode == 0x0 && excepinfo.scode == E_NOTIMPL,
         "EXCEPINFO differs from expected: wCode = 0x%x, scode = 0x%08x\n",
         excepinfo.wCode, excepinfo.scode);
@@ -1998,6 +2030,9 @@ static void test_external_connection(void)
 
     IStream_Seek(stream, zero, STREAM_SEEK_SET, NULL);
     hres = CoUnmarshalInterface(stream, &IID_ItestDual, (void**)&iface);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(hres == S_OK, "CoUnmarshalInterface failed: %08x\n", hres);
     ok(external_connections == 1, "external_connections = %d\n", external_connections);
 
@@ -2006,6 +2041,9 @@ static void test_external_connection(void)
 
     /* Creating a stub for new iface causes new external connection. */
     hres = ItestDual_QueryInterface(iface, &IID_ITestSecondDisp, (void**)&second);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(hres == S_OK, "Could not get ITestSecondDisp iface: %08x\n", hres);
     todo_wine
     ok(external_connections == 2, "external_connections = %d\n", external_connections);
@@ -2017,6 +2055,9 @@ static void test_external_connection(void)
 
     expect_last_release_closes = TRUE;
     ItestDual_Release(iface);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 0, "external_connections = %d\n", external_connections);
 
     end_host_object(tid, thread);
@@ -2028,12 +2069,18 @@ static void test_external_connection(void)
     expect_last_release_closes = FALSE;
     hres = CoMarshalInterface(stream, &IID_ItestDual, (IUnknown*)&TestDual, MSHCTX_INPROC, NULL, MSHLFLAGS_NORMAL);
     ok(hres == S_OK, "CoMarshalInterface failed: %08x\n", hres);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 1, "external_connections = %d\n", external_connections);
 
     expect_last_release_closes = TRUE;
     IStream_Seek(stream, zero, STREAM_SEEK_SET, NULL);
     hres = CoReleaseMarshalData(stream);
     ok(hres == S_OK, "CoReleaseMarshalData failed: %08x\n", hres);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 0, "external_connections = %d\n", external_connections);
 
     /* Two separated marshal data are still one external connection. */
@@ -2044,21 +2091,33 @@ static void test_external_connection(void)
     IStream_Seek(stream, zero, STREAM_SEEK_SET, NULL);
     hres = CoMarshalInterface(stream, &IID_ItestDual, (IUnknown*)&TestDual, MSHCTX_INPROC, NULL, MSHLFLAGS_NORMAL);
     ok(hres == S_OK, "CoMarshalInterface failed: %08x\n", hres);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 1, "external_connections = %d\n", external_connections);
 
     hres = CoMarshalInterface(stream2, &IID_ItestDual, (IUnknown*)&TestDual, MSHCTX_INPROC, NULL, MSHLFLAGS_NORMAL);
     ok(hres == S_OK, "CoMarshalInterface failed: %08x\n", hres);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 1, "external_connections = %d\n", external_connections);
 
     IStream_Seek(stream, zero, STREAM_SEEK_SET, NULL);
     hres = CoReleaseMarshalData(stream);
     ok(hres == S_OK, "CoReleaseMarshalData failed: %08x\n", hres);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 1, "external_connections = %d\n", external_connections);
 
     expect_last_release_closes = TRUE;
     IStream_Seek(stream2, zero, STREAM_SEEK_SET, NULL);
     hres = CoReleaseMarshalData(stream2);
     ok(hres == S_OK, "CoReleaseMarshalData failed: %08x\n", hres);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 0, "external_connections = %d\n", external_connections);
 
     IStream_Release(stream);
@@ -2070,17 +2129,26 @@ static void test_external_connection(void)
 
     hres = CoMarshalInterface(stream, &IID_ItestDual, (IUnknown*)&TestDual, MSHCTX_INPROC, NULL, MSHLFLAGS_TABLEWEAK);
     ok(hres == S_OK, "CoMarshalInterface failed: %08x\n", hres);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 0, "external_connections = %d\n", external_connections);
 
     IStream_Seek(stream, zero, STREAM_SEEK_SET, NULL);
     hres = CoUnmarshalInterface(stream, &IID_ItestDual, (void**)&iface);
     ok(hres == S_OK, "CoUnmarshalInterface failed: %08x\n", hres);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 0, "external_connections = %d\n", external_connections);
     ItestDual_Release(iface);
 
     IStream_Seek(stream, zero, STREAM_SEEK_SET, NULL);
     hres = CoReleaseMarshalData(stream);
     ok(hres == S_OK, "CoReleaseMarshalData failed: %08x\n", hres);
+#ifndef __i386__
+    todo_wine
+#endif
     ok(external_connections == 0, "external_connections = %d\n", external_connections);
 
     IStream_Release(stream);
-- 
2.16.1




More information about the wine-devel mailing list