[PATCH 1/2] msi/tests: Fix test_feature_override() to properly clean up its features on removal.

Zebediah Figura z.figura12 at gmail.com
Thu Jan 16 10:26:09 CST 2020


This was leaving behind registry entries (as well as the already accounted-for
program files), which apparently caused subsequent test failures when running
msi:action.

While Wine is not behaving exactly correctly here (i.e. and removing the feature
anyway), I suspect it is not sufficiently interesting to test whether we behave
correctly with what is essentially a buggy package.

Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
For reference: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Using-Condition-Level-quot-0-quot-results-in-files-being-left-behind-after-upgrade-then-uninstall-td7583950.html

 dlls/msi/tests/install.c | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

diff --git a/dlls/msi/tests/install.c b/dlls/msi/tests/install.c
index 365f1d3a756..0bd82a621fc 100644
--- a/dlls/msi/tests/install.c
+++ b/dlls/msi/tests/install.c
@@ -966,8 +966,8 @@ static const CHAR fo_feature_dat[] = "Feature\tFeature_Parent\tTitle\tDescriptio
 static const CHAR fo_condition_dat[] = "Feature_\tLevel\tCondition\n"
                                        "s38\ti2\tS255\n"
                                        "Condition\tFeature_\tLevel\n"
-                                       "preselected\t0\tPreselected\n"
-                                       "notpreselected\t0\tNOT Preselected\n";
+                                       "preselected\t0\tPreselected AND NOT REMOVE\n"
+                                       "notpreselected\t0\tNOT Preselected AND NOT REMOVE\n";
 
 static const CHAR fo_feature_comp_dat[] = "Feature_\tComponent_\n"
                                           "s38\ts72\n"
@@ -5464,10 +5464,8 @@ static void test_feature_override(void)
     ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
 
     ok(!delete_pf("msitest\\override.txt", TRUE), "file not removed\n");
-    todo_wine {
-    ok(delete_pf("msitest\\preselected.txt", TRUE), "file removed\n");
-    ok(delete_pf("msitest", FALSE), "directory removed\n");
-    }
+    ok(!delete_pf("msitest\\preselected.txt", TRUE), "file not removed\n");
+    ok(!delete_pf("msitest", FALSE), "directory not removed\n");
 
     r = MsiInstallProductA(msifile, NULL);
     ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
@@ -5480,10 +5478,8 @@ static void test_feature_override(void)
     ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
 
     ok(!delete_pf("msitest\\override.txt", TRUE), "file not removed\n");
-    todo_wine {
-    ok(delete_pf("msitest\\preselected.txt", TRUE), "file removed\n");
-    ok(delete_pf("msitest", FALSE), "directory removed\n");
-    }
+    ok(!delete_pf("msitest\\preselected.txt", TRUE), "file not removed\n");
+    ok(!delete_pf("msitest", FALSE), "directory not removed\n");
 
     delete_key(HKEY_LOCAL_MACHINE, "Software\\Wine\\msitest", access);
 
-- 
2.24.1




More information about the wine-devel mailing list