From 6b21265e139513c1a242d8677b154fcc0e1dc7ef Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Fri, 17 Jul 2020 15:22:14 -0700 Subject: Ensure named bindpaths are not found in unnamed bindpaths Fixes wixtoolset/issues#6200 --- .../BindVariablesFixture.cs | 32 +++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) (limited to 'src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs') diff --git a/src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs b/src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs index 3e9c7aa4..857b84cc 100644 --- a/src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/BindVariablesFixture.cs @@ -13,7 +13,7 @@ namespace WixToolsetTest.CoreIntegration [Fact] public void CanBuildWithDefaultValue() { - var folder = TestData.Get(@"TestData\BindVariables"); + var folder = TestData.Get(@"TestData", "BindVariables"); using (var fs = new DisposableFileSystem()) { @@ -34,5 +34,35 @@ namespace WixToolsetTest.CoreIntegration result.AssertSuccess(); } } + + [Fact] + public void CannotBuildWixlibWithBinariesFromMissingNamedBindPaths() + { + var folder = TestData.Get(@"TestData", "WixlibWithBinaries"); + + using (var fs = new DisposableFileSystem()) + { + var baseFolder = fs.GetFolder(); + var intermediateFolder = Path.Combine(baseFolder, "obj"); + var wixlibPath = Path.Combine(intermediateFolder, @"test.wixlib"); + + var result = WixRunner.Execute(new[] + { + "build", + Path.Combine(folder, "PackageComponents.wxs"), + "-bf", + "-bindpath", Path.Combine(folder, "data"), + // Use names that aren't excluded in default .gitignores. + "-bindpath", $"AlphaBits={Path.Combine(folder, "data", "alpha")}", + "-bindpath", $"PowerBits={Path.Combine(folder, "data", "powerpc")}", + "-bindpath", $"{Path.Combine(folder, "data", "alpha")}", + "-bindpath", $"{Path.Combine(folder, "data", "powerpc")}", + "-intermediateFolder", intermediateFolder, + "-o", wixlibPath, + }); + + Assert.Equal(103, result.ExitCode); + } + } } } -- cgit v1.2.3-55-g6feb