Detlef Riekenberg : urlmon/tests: Skip some sec_mgr tests on IE 4.0.
Alexandre Julliard
julliard at winehq.org
Thu Apr 22 11:23:59 CDT 2010
Module: wine
Branch: master
Commit: 29ea2075886b35215665125b67195fa8174efb60
URL: http://source.winehq.org/git/wine.git/?a=commit;h=29ea2075886b35215665125b67195fa8174efb60
Author: Detlef Riekenberg <wine.dev at web.de>
Date: Thu Apr 22 00:28:50 2010 +0200
urlmon/tests: Skip some sec_mgr tests on IE 4.0.
CoInternetCreateSecurityManager, CoInternetCreateZoneManager,
CoInternetGetSecurityUrl missing on IE 4.0 (winetestbot W95B).
---
dlls/urlmon/tests/sec_mgr.c | 50 ++++++++++++++++++++++++++++++++++--------
1 files changed, 40 insertions(+), 10 deletions(-)
diff --git a/dlls/urlmon/tests/sec_mgr.c b/dlls/urlmon/tests/sec_mgr.c
index 239da6c..5a1894b 100644
--- a/dlls/urlmon/tests/sec_mgr.c
+++ b/dlls/urlmon/tests/sec_mgr.c
@@ -35,6 +35,9 @@
#include "initguid.h"
+
+static HRESULT (WINAPI *pCoInternetCreateSecurityManager)(IServiceProvider *, IInternetSecurityManager**, DWORD);
+static HRESULT (WINAPI *pCoInternetCreateZoneManager)(IServiceProvider *, IInternetZoneManager**, DWORD);
static HRESULT (WINAPI *pCoInternetGetSecurityUrl)(LPCWSTR, LPWSTR*, PSUACTION, DWORD);
static const WCHAR url1[] = {'r','e','s',':','/','/','m','s','h','t','m','l','.','d','l','l',
@@ -109,7 +112,11 @@ static void test_SecurityManager(void)
DWORD zone, size, policy;
HRESULT hres;
- hres = CoInternetCreateSecurityManager(NULL, &secmgr, 0);
+ if(!pCoInternetCreateSecurityManager) {
+ return;
+ }
+
+ hres = pCoInternetCreateSecurityManager(NULL, &secmgr, 0);
ok(hres == S_OK, "CoInternetCreateSecurityManager failed: %08x\n", hres);
if(FAILED(hres))
return;
@@ -342,9 +349,13 @@ static void test_polices(void)
IInternetSecurityManager *secmgr = NULL;
HRESULT hres;
- hres = CoInternetCreateSecurityManager(NULL, &secmgr, 0);
+ if(!pCoInternetCreateSecurityManager || !pCoInternetCreateZoneManager) {
+ return;
+ }
+
+ hres = pCoInternetCreateSecurityManager(NULL, &secmgr, 0);
ok(hres == S_OK, "CoInternetCreateSecurityManager failed: %08x\n", hres);
- hres = CoInternetCreateZoneManager(NULL, &zonemgr, 0);
+ hres = pCoInternetCreateZoneManager(NULL, &zonemgr, 0);
ok(hres == S_OK, "CoInternetCreateZoneManager failed: %08x\n", hres);
test_url_action(secmgr, zonemgr, URLACTION_SCRIPT_RUN);
@@ -368,7 +379,11 @@ static void test_CoInternetCreateZoneManager(void)
IUnknown *punk = NULL;
HRESULT hr;
- hr = CoInternetCreateZoneManager(NULL, &zonemgr, 0);
+ if(!pCoInternetCreateZoneManager) {
+ return;
+ }
+
+ hr = pCoInternetCreateZoneManager(NULL, &zonemgr, 0);
ok(hr == S_OK, "CoInternetCreateZoneManager result: 0x%x\n", hr);
if (FAILED(hr))
return;
@@ -412,7 +427,11 @@ static void test_CreateZoneEnumerator(void)
DWORD dwCount;
DWORD dwCount2;
- hr = CoInternetCreateZoneManager(NULL, &zonemgr, 0);
+ if (!pCoInternetCreateZoneManager) {
+ return;
+ }
+
+ hr = pCoInternetCreateZoneManager(NULL, &zonemgr, 0);
ok(hr == S_OK, "CoInternetCreateZoneManager result: 0x%x\n", hr);
if (FAILED(hr))
return;
@@ -478,7 +497,7 @@ static void test_GetZoneActionPolicy(void)
HRESULT hres;
DWORD action = URLACTION_CREDENTIALS_USE; /* Implemented on all IE versions */
- hres = CoInternetCreateZoneManager(NULL, &zonemgr, 0);
+ hres = pCoInternetCreateZoneManager(NULL, &zonemgr, 0);
ok(hres == S_OK, "CoInternetCreateZoneManager failed: %08x\n", hres);
if(FAILED(hres))
return;
@@ -521,7 +540,7 @@ static void test_GetZoneAt(void)
DWORD dwZone;
DWORD i;
- hr = CoInternetCreateZoneManager(NULL, &zonemgr, 0);
+ hr = pCoInternetCreateZoneManager(NULL, &zonemgr, 0);
ok(hr == S_OK, "CoInternetCreateZoneManager result: 0x%x\n", hr);
if (FAILED(hr))
return;
@@ -569,7 +588,7 @@ static void test_GetZoneAttributes(void)
HRESULT hr;
DWORD i;
- hr = CoInternetCreateZoneManager(NULL, &zonemgr, 0);
+ hr = pCoInternetCreateZoneManager(NULL, &zonemgr, 0);
ok(hr == S_OK, "CoInternetCreateZoneManager result: 0x%x\n", hr);
if (FAILED(hr))
return;
@@ -622,7 +641,12 @@ static void test_InternetSecurityMarshalling(void)
IStream *stream;
HRESULT hres;
- hres = CoInternetCreateSecurityManager(NULL, &secmgr, 0);
+ if(!pCoInternetCreateSecurityManager) {
+ return;
+ }
+
+ hres = pCoInternetCreateSecurityManager(NULL, &secmgr, 0);
+ ok(hres == S_OK, "CoInternetCreateSecurityManager failed: %08x\n", hres);
if(FAILED(hres))
return;
@@ -657,7 +681,6 @@ static void test_InternetGetSecurityUrl(void)
HRESULT hres;
if (!pCoInternetGetSecurityUrl) {
- win_skip("CoInternetGetSecurityUrl not found\n");
return;
}
@@ -688,8 +711,15 @@ START_TEST(sec_mgr)
OleInitialize(NULL);
hurlmon = GetModuleHandle("urlmon.dll");
+ pCoInternetCreateSecurityManager = (void*) GetProcAddress(hurlmon, "CoInternetCreateSecurityManager");
+ pCoInternetCreateZoneManager = (void*) GetProcAddress(hurlmon, "CoInternetCreateZoneManager");
pCoInternetGetSecurityUrl = (void*) GetProcAddress(hurlmon, "CoInternetGetSecurityUrl");
+ if (!pCoInternetCreateSecurityManager || !pCoInternetCreateZoneManager ||
+ !pCoInternetGetSecurityUrl) {
+ win_skip("Various CoInternet* functions not present in IE 4.0\n");
+ }
+
test_InternetGetSecurityUrl();
test_SecurityManager();
test_polices();
More information about the wine-cvs
mailing list