summaryrefslogtreecommitdiff
path: root/src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2022-03-15 18:09:12 -0500
committerSean Hall <r.sean.hall@gmail.com>2022-03-16 20:14:37 -0500
commitdb22d99a4d603caab18fd42cb40881431c353912 (patch)
tree93085f239b881010760392d62a695f7717cebb1a /src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs
parent8c9ca787bee29f969cd7ca9aeaa46626d557d196 (diff)
downloadwix-db22d99a4d603caab18fd42cb40881431c353912.tar.gz
wix-db22d99a4d603caab18fd42cb40881431c353912.tar.bz2
wix-db22d99a4d603caab18fd42cb40881431c353912.zip
Enhance bundle backend validation.
Diffstat (limited to 'src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs')
-rw-r--r--src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs22
1 files changed, 18 insertions, 4 deletions
diff --git a/src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs b/src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs
index ef4ee49a..9aea8c1d 100644
--- a/src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs
+++ b/src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs
@@ -2,6 +2,7 @@
2 2
3namespace WixToolsetTest.Bal 3namespace WixToolsetTest.Bal
4{ 4{
5 using System;
5 using System.IO; 6 using System.IO;
6 using System.Linq; 7 using System.Linq;
7 using System.Xml; 8 using System.Xml;
@@ -138,20 +139,33 @@ namespace WixToolsetTest.Bal
138 { 139 {
139 var baseFolder = fs.GetFolder(); 140 var baseFolder = fs.GetFolder();
140 var bundleFile = Path.Combine(baseFolder, "bin", "test.exe"); 141 var bundleFile = Path.Combine(baseFolder, "bin", "test.exe");
141 var bundleSourceFolder = TestData.Get(@"TestData\Overridable"); 142 var bundleSourceFolder = TestData.Get(@"TestData");
142 var intermediateFolder = Path.Combine(baseFolder, "obj"); 143 var intermediateFolder = Path.Combine(baseFolder, "obj");
143 var baFolderPath = Path.Combine(baseFolder, "ba"); 144 var baFolderPath = Path.Combine(baseFolder, "ba");
144 var extractFolderPath = Path.Combine(baseFolder, "extract"); 145 var extractFolderPath = Path.Combine(baseFolder, "extract");
145 146
146 var compileResult = WixRunner.Execute(new[] 147 var result = WixRunner.Execute(new[]
147 { 148 {
148 "build", 149 "build",
149 Path.Combine(bundleSourceFolder, "WrongCaseBundle.wxs"), 150 Path.Combine(bundleSourceFolder, "Overridable", "WrongCaseBundle.wxs"),
151 "-loc", Path.Combine(bundleSourceFolder, "Overridable", "WrongCaseBundle.wxl"),
152 "-bindpath", Path.Combine(bundleSourceFolder, "WixStdBa", "Data"),
150 "-ext", TestData.Get(@"WixToolset.Bal.wixext.dll"), 153 "-ext", TestData.Get(@"WixToolset.Bal.wixext.dll"),
151 "-intermediateFolder", intermediateFolder, 154 "-intermediateFolder", intermediateFolder,
152 "-o", bundleFile, 155 "-o", bundleFile,
153 }); 156 });
154 Assert.Equal((int)BalErrors.Ids.NonUpperCaseOverridableVariable, compileResult.ExitCode); 157
158 Assert.InRange(result.ExitCode, 2, Int32.MaxValue);
159
160 var messages = result.Messages.Select(m => m.ToString()).ToList();
161 messages.Sort();
162
163 WixAssert.CompareLineByLine(new[]
164 {
165 "bal:Condition/@Condition contains the built-in Variable 'WixBundleAction', which is not available when it is evaluated. (Unavailable Variables are: 'WixBundleAction'.). Rewrite the condition to avoid Variables that are never valid during its evaluation.",
166 "Overridable variable 'Test1' must be 'TEST1' with Bundle/@CommandLineVariables value 'upperCase'.",
167 "The *Package/@bal:DisplayInternalUICondition attribute's value '=' is not a valid bundle condition.",
168 }, messages.ToArray());
155 } 169 }
156 } 170 }
157 } 171 }