From 66563e5e142fb89d4df5d2b8a20e65261becb0a2 Mon Sep 17 00:00:00 2001 From: fyodorkor Date: Thu, 13 Apr 2023 22:37:02 +0300 Subject: Fix XmlConfig decompile to produce schema element, Add unitest for XmlDecomile --- .../WixToolsetTest.Util/UtilExtensionFixture.cs | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/ext/Util/test') diff --git a/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs b/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs index e04252da..7cc3a6d4 100644 --- a/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs +++ b/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs @@ -301,6 +301,29 @@ namespace WixToolsetTest.Util }, results.OrderBy(s => s).ToArray()); } + [Fact] + public void CanRoundtripXmlConfig() + { + var folder = TestData.Get(@"TestData", "XmlConfig"); + var build = new Builder(folder, typeof(UtilExtensionFactory), new[] { folder }); + var output = Path.Combine(folder, "XmlConfigdecompile.xml"); + + build.BuildAndDecompileAndBuild(Build, Decompile, output); + + var doc = XDocument.Load(output); + var utilElementNames = doc.Descendants().Where(e => e.Name.Namespace == "http://wixtoolset.org/schemas/v4/wxs/util") + .Select(e => e.Name.LocalName) + .ToArray(); + + WixAssert.CompareLineByLine(new[] + { + "XmlConfig", + "XmlConfig", + "XmlConfig", + "XmlConfig" + }, utilElementNames); + } + [Fact] public void CanBuildModuleWithXmlConfig() { -- cgit v1.2.3-55-g6feb