From e2f9e3cdc8e37693121fbc0ce61bdd325cbec626 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Wed, 9 Dec 2020 15:59:21 -0500 Subject: Add test to verify primary feature select in component categories. --- .../MsiQueryFixture.cs | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs') diff --git a/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs b/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs index 6409676e..11b1703c 100644 --- a/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs @@ -1004,5 +1004,38 @@ namespace WixToolsetTest.CoreIntegration }, files.Select(f => f.Name).ToArray()); } } + + [Fact] + public void CanPublishComponentWithMultipleFeatureComponents() + { + var folder = TestData.Get(@"TestData\PublishComponent"); + + 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, "Package.wxs"), + "-loc", Path.Combine(folder, "Package.en-us.wxl"), + "-bindpath", Path.Combine(folder, "data"), + "-intermediateFolder", intermediateFolder, + "-o", msiPath + }); + + result.AssertSuccess(); + + Assert.True(File.Exists(msiPath)); + var results = Query.QueryDatabase(msiPath, new[] { "PublishComponent" }); + WixAssert.CompareLineByLine(new[] + { + "PublishComponent:{0A82C8F6-9CE9-4336-B8BE-91A39B5F7081} Qualifier2 Component2 AppData2 ProductFeature2", + "PublishComponent:{BD245B5A-EC33-46ED-98FF-E9D3D416AD04} Qualifier1 Component1 AppData1 ProductFeature1", + }, results); + } + } } } -- cgit v1.2.3-55-g6feb