[PATCH 2/2] hnetcfg/tests: Add INetFwAuthorizedApplication tests

Alistair Leslie-Hughes leslie_alistair at hotmail.com
Sun Apr 22 21:24:06 CDT 2018


Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
---
 dlls/hnetcfg/tests/Makefile.in |  2 +-
 dlls/hnetcfg/tests/policy.c    | 49 +++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 49 insertions(+), 2 deletions(-)

diff --git a/dlls/hnetcfg/tests/Makefile.in b/dlls/hnetcfg/tests/Makefile.in
index aa4062a..8315b4b 100644
--- a/dlls/hnetcfg/tests/Makefile.in
+++ b/dlls/hnetcfg/tests/Makefile.in
@@ -1,5 +1,5 @@
 TESTDLL   = hnetcfg.dll
-IMPORTS   = ole32 uuid
+IMPORTS   = ole32 uuid oleaut32 advapi32
 
 C_SRCS = \
 	policy.c
diff --git a/dlls/hnetcfg/tests/policy.c b/dlls/hnetcfg/tests/policy.c
index 7b5bef0..4d70818 100644
--- a/dlls/hnetcfg/tests/policy.c
+++ b/dlls/hnetcfg/tests/policy.c
@@ -102,6 +102,53 @@ static void test_interfaces(void)
     INetFwMgr_Release(manager);
 }
 
+static void test_NetFwAuthorizedApplication(void)
+{
+    INetFwAuthorizedApplication *app;
+    HRESULT hr;
+
+    hr = CoCreateInstance(&CLSID_NetFwAuthorizedApplication, NULL, CLSCTX_INPROC_SERVER|CLSCTX_INPROC_HANDLER,
+            &IID_INetFwAuthorizedApplication, (void**)&app);
+    ok(hr == S_OK, "got: %08x\n", hr);
+    if(hr == S_OK)
+    {
+        BSTR image = SysAllocStringLen( NULL, MAX_PATH );
+        static WCHAR empty[] = {0};
+        BSTR bstr;
+
+        if (!GetModuleFileNameW( NULL, image, MAX_PATH ))
+        {
+            ok(0, "Failed to get filename\n");
+            SysFreeString( image );
+            return;
+        }
+
+        hr = INetFwAuthorizedApplication_get_ProcessImageFileName(app, NULL);
+        ok(hr == E_POINTER, "got: %08x\n", hr);
+
+        hr = INetFwAuthorizedApplication_get_ProcessImageFileName(app, &bstr);
+        ok(hr == S_OK || hr == HRESULT_FROM_WIN32(ERROR_NOT_ENOUGH_MEMORY), "got: %08x\n", hr);
+        ok(!bstr, "got: %s\n",  wine_dbgstr_w(bstr));
+
+        hr = INetFwAuthorizedApplication_put_ProcessImageFileName(app, NULL);
+        ok(hr == E_INVALIDARG || hr == HRESULT_FROM_WIN32(ERROR_PATH_NOT_FOUND), "got: %08x\n", hr);
+
+        hr = INetFwAuthorizedApplication_put_ProcessImageFileName(app, empty);
+        ok(hr == E_INVALIDARG || hr == HRESULT_FROM_WIN32(ERROR_PATH_NOT_FOUND), "got: %08x\n", hr);
+
+        hr = INetFwAuthorizedApplication_put_ProcessImageFileName(app, image);
+        ok(hr == S_OK, "got: %08x\n", hr);
+
+        hr = INetFwAuthorizedApplication_get_ProcessImageFileName(app, &bstr);
+        ok(hr == S_OK, "got: %08x\n", hr);
+        ok(!lstrcmpW(bstr,image), "got: %s\n", wine_dbgstr_w(bstr));
+        SysFreeString( bstr );
+
+        SysFreeString( image );
+        INetFwAuthorizedApplication_Release(app);
+    }
+}
+
 START_TEST(policy)
 {
     INetFwMgr *manager;
@@ -121,7 +168,7 @@ START_TEST(policy)
     INetFwMgr_Release(manager);
 
     test_interfaces();
-
+    test_NetFwAuthorizedApplication();
 
     CoUninitialize();
 }
-- 
1.9.1




More information about the wine-devel mailing list