From a44207c9296c3d5d18f07455f919781b88424c54 Mon Sep 17 00:00:00 2001 From: Sean Hall Date: Fri, 27 Sep 2019 16:51:30 +1000 Subject: Add failing test for FeatureGroup and parent Features. --- .../MsiQueryFixture.cs | 35 ++++++++++++++++++++++ .../TestData/FeatureGroup/FeatureGroup.wxs | 14 +++++++++ .../MinimalComponentGroup.wxs | 10 +++++++ .../WixToolsetTest.CoreIntegration.csproj | 2 ++ 4 files changed, 61 insertions(+) create mode 100644 src/test/WixToolsetTest.CoreIntegration/TestData/FeatureGroup/FeatureGroup.wxs create mode 100644 src/test/WixToolsetTest.CoreIntegration/TestData/ProductWithComponentGroupRef/MinimalComponentGroup.wxs diff --git a/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs b/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs index 82934b9a..4fb136d5 100644 --- a/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs @@ -50,5 +50,40 @@ namespace WixToolsetTest.CoreIntegration }, results); } } + + [Fact(Skip = "Test demonstrates failure")] + public void PopulatesFeatureTableWithParent() + { + var folder = TestData.Get(@"TestData"); + + using (var fs = new DisposableFileSystem()) + { + var baseFolder = fs.GetFolder(); + var intermediateFolder = Path.Combine(baseFolder, "obj"); + var msiPath = Path.Combine(baseFolder, @"bin\test.msi"); + + var result = WixRunner.Execute(new[] + { + "build", + Path.Combine(folder, "FeatureGroup", "FeatureGroup.wxs"), + Path.Combine(folder, "ProductWithComponentGroupRef", "MinimalComponentGroup.wxs"), + Path.Combine(folder, "ProductWithComponentGroupRef", "Product.wxs"), + "-bindpath", Path.Combine(folder, "SingleFile", "data"), + "-intermediateFolder", intermediateFolder, + "-o", msiPath + }); + + result.AssertSuccess(); + + Assert.True(File.Exists(msiPath)); + var results = Query.QueryDatabase(msiPath, new[] { "Feature" }); + Assert.Equal(new[] + { + "Feature:ChildFeature\tParentFeature\tChildFeatureTitle\t\t2\t1\t\t0", + "Feature:ParentFeature\t\tParentFeatureTitle\t\t2\t1\t\t0", + "Feature:ProductFeature\t\tMsiPackageTitle\t\t2\t1\t\t0", + }, results); + } + } } } diff --git a/src/test/WixToolsetTest.CoreIntegration/TestData/FeatureGroup/FeatureGroup.wxs b/src/test/WixToolsetTest.CoreIntegration/TestData/FeatureGroup/FeatureGroup.wxs new file mode 100644 index 00000000..be302720 --- /dev/null +++ b/src/test/WixToolsetTest.CoreIntegration/TestData/FeatureGroup/FeatureGroup.wxs @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/src/test/WixToolsetTest.CoreIntegration/TestData/ProductWithComponentGroupRef/MinimalComponentGroup.wxs b/src/test/WixToolsetTest.CoreIntegration/TestData/ProductWithComponentGroupRef/MinimalComponentGroup.wxs new file mode 100644 index 00000000..f62bbd0e --- /dev/null +++ b/src/test/WixToolsetTest.CoreIntegration/TestData/ProductWithComponentGroupRef/MinimalComponentGroup.wxs @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/test/WixToolsetTest.CoreIntegration/WixToolsetTest.CoreIntegration.csproj b/src/test/WixToolsetTest.CoreIntegration/WixToolsetTest.CoreIntegration.csproj index 8e7f1b8f..8a11e531 100644 --- a/src/test/WixToolsetTest.CoreIntegration/WixToolsetTest.CoreIntegration.csproj +++ b/src/test/WixToolsetTest.CoreIntegration/WixToolsetTest.CoreIntegration.csproj @@ -18,6 +18,8 @@ + + -- cgit v1.2.3-55-g6feb