Show correct error message when upgrade is blocked
timberto committed
Apr 18, 2023 at 12:34 UTC
b695f2032801a21c47b7c871a70497b7d7ae488d
3 files changed
+39
-3
src/wix/WixToolset.Core/Compiler.cs
+1
-1
@@ -6635,7 +6635,7 @@ namespace WixToolset.Core
6635
this.Core.AddSymbol(new LaunchConditionSymbol(sourceLineNumbers)
6636
{
6637
Condition = WixUpgradeConstants.UpgradePreventedCondition,
6638
- Description = downgradeErrorMessage
6638
+ Description = disallowUpgradeErrorMessage
6639
});
6640
}
6641
src/wix/test/WixToolsetTest.CoreIntegration/TestData/Upgrade/MajorUpgradeDowngradeMessage.wxs
new
+15
@@ -0,0 +1,15 @@
1
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
2
+ <Package Name="MajorUpgradeDowngradeMessage" Language="1033" Version="2.0.0" Manufacturer="Example Corporation" UpgradeCode="7ab24276-c628-43db-9e65-a184d052909b" Scope="perMachine">
3
+
4
+ <MajorUpgrade Disallow="yes" DisallowUpgradeErrorMessage="No upgrades allowed!" DowngradeErrorMessage="No downgrades allowed!" />
5
+
6
+ <Feature Id="ProductFeature" Title="MsiPackageTitle">
7
+ </Feature>
8
+ </Package>
9
+
10
+ <Fragment>
11
+ <StandardDirectory Id="ProgramFiles6432Folder">
12
+ <Directory Id="INSTALLFOLDER" Name="MsiPackage" />
13
+ </StandardDirectory>
14
+ </Fragment>
15
+</Wix>
src/wix/test/WixToolsetTest.CoreIntegration/UpgradeFixture.cs
+23
-2
@@ -11,9 +11,8 @@ namespace WixToolsetTest.CoreIntegration
11
12
public class UpgradeFixture
13
{
14
-
14
[Fact]
16
- public void PopulatesInstallExecuteSequenceTable()
15
+ public void FailsOnInvalidVersion()
16
{
17
var folder = TestData.Get(@"TestData");
18
@@ -44,5 +43,27 @@ namespace WixToolsetTest.CoreIntegration
43
Assert.Equal(242, result.ExitCode);
44
}
45
}
46
+
47
+ [Fact]
48
+ public void MajorUpgradeDowngradeMessagePopulatesRowsAsExpected()
49
+ {
50
+ var folder = TestData.Get("TestData", "Upgrade");
51
+ var build = new Builder(folder, null, new[] { folder });
52
+
53
+ var results = build.BuildAndQuery(Build, "Upgrade", "LaunchCondition");
54
+ WixAssert.CompareLineByLine(new[]
55
+ {
56
+ "LaunchCondition:NOT WIX_DOWNGRADE_DETECTED\tNo downgrades allowed!",
57
+ "LaunchCondition:NOT WIX_UPGRADE_DETECTED\tNo upgrades allowed!",
58
+ "Upgrade:{7AB24276-C628-43DB-9E65-A184D052909B}\t\t2.0.0\t1033\t1\t\tWIX_UPGRADE_DETECTED",
59
+ "Upgrade:{7AB24276-C628-43DB-9E65-A184D052909B}\t2.0.0\t\t1033\t2\t\tWIX_DOWNGRADE_DETECTED",
60
+ }, results);
61
+ }
62
+
63
+ private static void Build(string[] args)
64
+ {
65
+ var result = WixRunner.Execute(args);
66
+ result.AssertSuccess();
67
+ }
68
}
69
}