Detlef Riekenberg : urlmon/tests: Skip protocol tests on IE 4.0.
Alexandre Julliard
julliard at winehq.org
Thu Apr 22 11:24:00 CDT 2010
Module: wine
Branch: master
Commit: 63b53ff5865359e53bf348dee32be9a67880d847
URL: http://source.winehq.org/git/wine.git/?a=commit;h=63b53ff5865359e53bf348dee32be9a67880d847
Author: Detlef Riekenberg <wine.dev at web.de>
Date: Thu Apr 22 00:28:54 2010 +0200
urlmon/tests: Skip protocol tests on IE 4.0.
Register the filters is not possible due to the missing functions.
No tests left, so skip all of them (winetestbot W95B).
---
dlls/urlmon/tests/protocol.c | 23 +++++++++++++++++++----
1 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/dlls/urlmon/tests/protocol.c b/dlls/urlmon/tests/protocol.c
index ba0c32c..19e1e98 100644
--- a/dlls/urlmon/tests/protocol.c
+++ b/dlls/urlmon/tests/protocol.c
@@ -29,6 +29,9 @@
#include "urlmon.h"
#include "wininet.h"
+static HRESULT (WINAPI *pCoInternetGetSession)(DWORD, IInternetSession **, DWORD);
+static HRESULT (WINAPI *pReleaseBindInfo)(BINDINFO*);
+
#define DEFINE_EXPECT(func) \
static BOOL expect_ ## func = FALSE, called_ ## func = FALSE
@@ -1318,7 +1321,7 @@ static HRESULT WINAPI ProtocolEmul_Start(IInternetProtocol *iface, LPCWSTR szUrl
ok(cbindf == (bindf|BINDF_FROMURLMON), "bindf = %x, expected %x\n",
cbindf, (bindf|BINDF_FROMURLMON));
ok(!memcmp(&exp_bindinfo, &bindinfo, sizeof(bindinfo)), "unexpected bindinfo\n");
- ReleaseBindInfo(&bindinfo);
+ pReleaseBindInfo(&bindinfo);
SET_EXPECT(ReportProgress_SENDINGREQUEST);
hres = IInternetProtocolSink_ReportProgress(pOIProtSink, BINDSTATUS_SENDINGREQUEST, emptyW);
@@ -2793,7 +2796,7 @@ static void test_CreateBinding(void)
trace("Testing CreateBinding...\n");
init_test(BIND_TEST, TEST_BINDING);
- hres = CoInternetGetSession(0, &session, 0);
+ hres = pCoInternetGetSession(0, &session, 0);
ok(hres == S_OK, "CoInternetGetSession failed: %08x\n", hres);
hres = IInternetSession_RegisterNameSpace(session, &ClassFactory, &IID_NULL, wsz_test, 0, NULL, 0);
@@ -2932,7 +2935,7 @@ static void test_binding(int prot, DWORD grf_pi, DWORD test_flags)
init_test(prot, test_flags|TEST_BINDING);
- hres = CoInternetGetSession(0, &session, 0);
+ hres = pCoInternetGetSession(0, &session, 0);
ok(hres == S_OK, "CoInternetGetSession failed: %08x\n", hres);
if(test_flags & TEST_EMULATEPROT) {
@@ -3042,7 +3045,8 @@ static void register_filter(void)
static const WCHAR gzipW[] = {'g','z','i','p',0};
- CoInternetGetSession(0, &session, 0);
+ hres = pCoInternetGetSession(0, &session, 0);
+ ok(hres == S_OK, "CoInternetGetSession failed: %08x\n", hres);
hres = IInternetSession_RegisterMimeFilter(session, &mimefilter_cf, &IID_IInternetProtocol, gzipW);
ok(hres == S_OK, "RegisterMimeFilter failed: %08x\n", hres);
@@ -3052,6 +3056,17 @@ static void register_filter(void)
START_TEST(protocol)
{
+ HMODULE hurlmon;
+
+ hurlmon = GetModuleHandle("urlmon.dll");
+ pCoInternetGetSession = (void*) GetProcAddress(hurlmon, "CoInternetGetSession");
+ pReleaseBindInfo = (void*) GetProcAddress(hurlmon, "ReleaseBindInfo");
+
+ if (!pCoInternetGetSession || !pReleaseBindInfo) {
+ win_skip("Various needed functions not present in IE 4.0\n");
+ return;
+ }
+
OleInitialize(NULL);
event_complete = CreateEvent(NULL, FALSE, FALSE, NULL);
More information about the wine-cvs
mailing list