Hans Leidekker : msi/tests: Properly clean up test services.

Alexandre Julliard julliard at winehq.org
Fri Nov 4 15:15:53 CDT 2016


Module: wine
Branch: master
Commit: 6f463db5b0d477e4a76038a8158292680c3a553b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=6f463db5b0d477e4a76038a8158292680c3a553b

Author: Hans Leidekker <hans at codeweavers.com>
Date:   Fri Nov  4 13:28:05 2016 +0100

msi/tests: Properly clean up test services.

Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/msi/tests/action.c | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

diff --git a/dlls/msi/tests/action.c b/dlls/msi/tests/action.c
index c281d3b..d51a3d5 100644
--- a/dlls/msi/tests/action.c
+++ b/dlls/msi/tests/action.c
@@ -5427,28 +5427,23 @@ static void test_start_stop_services(void)
     DeleteFileA(msifile);
 }
 
-static void delete_TestService(void)
+static void delete_test_service(const char *name)
 {
     BOOL ret;
     SC_HANDLE manager, service;
 
     manager = OpenSCManagerA(NULL, NULL, SC_MANAGER_ALL_ACCESS);
     ok(manager != NULL, "can't open service manager\n");
-    if (!manager)
-        return;
-
-    service = OpenServiceA(manager, "TestService", GENERIC_ALL);
-    ok(service != NULL, "TestService doesn't exist\n");
+    if (!manager) return;
 
+    service = OpenServiceA(manager, name, GENERIC_ALL);
     if (service)
     {
         ret = DeleteService( service );
         ok( ret, "failed to delete service %u\n", GetLastError() );
-
         CloseServiceHandle(service);
     }
     CloseServiceHandle(manager);
-
 }
 
 static void test_delete_services(void)
@@ -5473,7 +5468,7 @@ static void test_delete_services(void)
     ok(service != NULL, "can't create service %u\n", GetLastError());
     CloseServiceHandle(service);
     CloseServiceHandle(manager);
-    if (!service) goto error;
+    if (!service) return;
 
     create_test_files();
     create_database(msifile, sds_tables, sizeof(sds_tables) / sizeof(msi_table));
@@ -5516,7 +5511,9 @@ static void test_delete_services(void)
     ok(delete_pf("msitest", FALSE), "Directory not created\n");
 
 error:
-    delete_TestService();
+    delete_test_service("TestService");
+    delete_test_service("TestService2");
+    delete_test_service("TestService3");
     delete_test_files();
     DeleteFileA(msifile);
 }
@@ -5558,7 +5555,6 @@ static void test_install_services(void)
 
     service = OpenServiceA(manager, "TestService4", GENERIC_ALL);
     ok(service == NULL, "TestService4 installed\n");
-    CloseServiceHandle(manager);
 
     res = RegOpenKeyA(HKEY_LOCAL_MACHINE, "SYSTEM\\CurrentControlSet\\Services\\TestService", &hKey);
     ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
@@ -5576,6 +5572,11 @@ static void test_install_services(void)
     r = MsiInstallProductA(msifile, "REMOVE=ALL");
     ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
 
+    service = OpenServiceA(manager, "TestService", GENERIC_ALL);
+    ok(service != NULL, "TestService deleted\n");
+    CloseServiceHandle(service);
+    CloseServiceHandle(manager);
+
     ok(delete_pf("msitest\\cabout\\new\\five.txt", TRUE), "File not installed\n");
     ok(delete_pf("msitest\\cabout\\new", FALSE), "Directory not created\n");
     ok(delete_pf("msitest\\cabout\\four.txt", TRUE), "File not installed\n");
@@ -5591,7 +5592,7 @@ static void test_install_services(void)
     ok(delete_pf("msitest", FALSE), "Directory not created\n");
 
 error:
-    delete_TestService();
+    delete_test_service("TestService");
     delete_test_files();
     DeleteFileA(msifile);
 }




More information about the wine-cvs mailing list