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 +++++++++++++++++++++- .../TestData/WixlibWithBinaries/data/alpha/foo.dll | 2 +- .../TestData/WixlibWithBinaries/data/mips/foo.dll | 2 +- .../WixlibWithBinaries/data/powerpc/foo.dll | 2 +- .../WixlibFixture.cs | 30 -------------------- 5 files changed, 34 insertions(+), 34 deletions(-) (limited to 'src/test/WixToolsetTest.CoreIntegration') 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); + } + } } } diff --git a/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/alpha/foo.dll b/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/alpha/foo.dll index cd0db0e1..fd36c768 100644 --- a/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/alpha/foo.dll +++ b/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/alpha/foo.dll @@ -1 +1 @@ -This is test.txt. \ No newline at end of file +This is alpha\foo.dll. diff --git a/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/mips/foo.dll b/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/mips/foo.dll index cd0db0e1..292925c7 100644 --- a/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/mips/foo.dll +++ b/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/mips/foo.dll @@ -1 +1 @@ -This is test.txt. \ No newline at end of file +This is mips\foo.dll. diff --git a/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/powerpc/foo.dll b/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/powerpc/foo.dll index cd0db0e1..663e9d99 100644 --- a/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/powerpc/foo.dll +++ b/src/test/WixToolsetTest.CoreIntegration/TestData/WixlibWithBinaries/data/powerpc/foo.dll @@ -1 +1 @@ -This is test.txt. \ No newline at end of file +This is powerpc\foo.dll. diff --git a/src/test/WixToolsetTest.CoreIntegration/WixlibFixture.cs b/src/test/WixToolsetTest.CoreIntegration/WixlibFixture.cs index a60169c7..6ae2c0b8 100644 --- a/src/test/WixToolsetTest.CoreIntegration/WixlibFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/WixlibFixture.cs @@ -88,36 +88,6 @@ namespace WixToolsetTest.CoreIntegration } } - [Fact(Skip = "Test demonstrates failure")] - public void CantBuildWixlibWithBinariesFromMissingNamedBindPaths() - { - 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.InRange(result.ExitCode, 2, int.MaxValue); - } - } - [Fact] public void CanBuildSingleFileUsingWixlib() { -- cgit v1.2.3-55-g6feb