From 9ba9908cc585296f2b0ed2487351853e1a490005 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Wed, 11 Dec 2019 18:58:56 -0500 Subject: Don't mess with CDATA whitespace. --- src/WixToolset.Converters/Wix3Converter.cs | 2 +- .../WixToolsetTest.Converters/ConverterFixture.cs | 27 ++++++++++++++++++++-- 2 files changed, 26 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/WixToolset.Converters/Wix3Converter.cs b/src/WixToolset.Converters/Wix3Converter.cs index faff12ee..b6366a83 100644 --- a/src/WixToolset.Converters/Wix3Converter.cs +++ b/src/WixToolset.Converters/Wix3Converter.cs @@ -255,7 +255,7 @@ namespace WixToolset.Converters private void EnsurePrecedingWhitespaceRemoved(XText whitespace, XNode node, ConverterTestType testType) { - if (!String.IsNullOrEmpty(whitespace.Value)) + if (!String.IsNullOrEmpty(whitespace.Value) && whitespace.NodeType != XmlNodeType.CDATA) { var message = testType == ConverterTestType.WhitespacePrecedingEndElementWrong ? "The whitespace preceding this end element is incorrect." : "The whitespace preceding this node is incorrect."; diff --git a/src/test/WixToolsetTest.Converters/ConverterFixture.cs b/src/test/WixToolsetTest.Converters/ConverterFixture.cs index fd35ae50..cb70b35a 100644 --- a/src/test/WixToolsetTest.Converters/ConverterFixture.cs +++ b/src/test/WixToolsetTest.Converters/ConverterFixture.cs @@ -242,6 +242,25 @@ namespace WixToolsetTest.Converters Assert.Equal(2, errors); } + [Fact] + public void CanKeepCdataWithOnlyWhitespace() + { + var parse = String.Join(Environment.NewLine, + "", + "", + " ", + " ", + " ", + ""); + + var document = XDocument.Parse(parse, LoadOptions.PreserveWhitespace | LoadOptions.SetLineInfo); + + var messaging = new DummyMessaging(); + var converter = new Wix3Converter(messaging, 2, null, null); + var errors = converter.ConvertDocument(document); + Assert.Equal(0, errors); + } + [Fact] public void CanConvertMainNamespace() { @@ -400,7 +419,9 @@ namespace WixToolsetTest.Converters "", " ", " ", - " ", + " ", + " ", + " ", " ", ""); @@ -409,7 +430,9 @@ namespace WixToolsetTest.Converters "", " ", " ", - " ", + " ", + " ", + " ", " ", ""); -- cgit v1.2.3-55-g6feb