From d5985a1688bc878e42ffd3ce3939fa52303cab16 Mon Sep 17 00:00:00 2001 From: Sean Hall Date: Fri, 13 May 2022 15:39:40 -0500 Subject: Add option to hosts to always install prereqs. Add PrereqPackage to BundlePackage Implements 4718 --- .../test/WixToolsetTest.Bal/BalExtensionFixture.cs | 38 ++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) (limited to 'src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs') diff --git a/src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs b/src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs index 9aea8c1d..43484855 100644 --- a/src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs +++ b/src/ext/Bal/test/WixToolsetTest.Bal/BalExtensionFixture.cs @@ -107,7 +107,41 @@ namespace WixToolsetTest.Bal } [Fact] - public void CantBuildUsingMBAWithNoPrereqs() + public void CanBuildUsingMBAWithAlwaysInstallPrereqs() + { + using (var fs = new DisposableFileSystem()) + { + var baseFolder = fs.GetFolder(); + var bundleFile = Path.Combine(baseFolder, "bin", "test.exe"); + var bundleSourceFolder = TestData.Get(@"TestData\MBA"); + var intermediateFolder = Path.Combine(baseFolder, "obj"); + var baFolderPath = Path.Combine(baseFolder, "ba"); + var extractFolderPath = Path.Combine(baseFolder, "extract"); + + var compileResult = WixRunner.Execute(new[] + { + "build", + Path.Combine(bundleSourceFolder, "AlwaysInstallPrereqsBundle.wxs"), + "-ext", TestData.Get(@"WixToolset.Bal.wixext.dll"), + "-intermediateFolder", intermediateFolder, + "-o", bundleFile, + }); + + compileResult.AssertSuccess(); + + Assert.True(File.Exists(bundleFile)); + + var extractResult = BundleExtractor.ExtractBAContainer(null, bundleFile, baFolderPath, extractFolderPath); + extractResult.AssertSuccess(); + + var wixMbaPrereqOptionsElements = extractResult.SelectBADataNodes("/ba:BootstrapperApplicationData/ba:WixMbaPrereqOptions"); + var wixMbaPrereqOptions = (XmlNode)Assert.Single(wixMbaPrereqOptionsElements); + Assert.Equal("", wixMbaPrereqOptions.GetTestXml()); + } + } + + [Fact] + public void CannotBuildUsingMBAWithNoPrereqs() { using (var fs = new DisposableFileSystem()) { @@ -133,7 +167,7 @@ namespace WixToolsetTest.Bal } [Fact] - public void CantBuildUsingOverridableWrongCase() + public void CannotBuildUsingOverridableWrongCase() { using (var fs = new DisposableFileSystem()) { -- cgit v1.2.3-55-g6feb