Exemple #1
0
        public void ToStringIndentTest()
        {
            var commonXmlNode2 = new SavannahTagNode
            {
                TagName    = "root",
                ChildNodes = new[]
                {
                    new SavannahTagNode
                    {
                        TagName    = "ChildNode",
                        Attributes = new AttributeInfo[]
                        {
                            new AttributeInfo
                            {
                                Name  = "name",
                                Value = "attr"
                            }
                        },
                        ChildNodes = new[]
                        {
                            new SavannahTextNode
                            {
                                InnerText = "Value"
                            }
                        }
                    }
                }
            };

            var exp = "<root>\n    <ChildNode name=\"attr\">\n        Value\n    </ChildNode>\n</root>";
            var act = commonXmlNode2.ToString(4);

            Assert.AreEqual(exp, act);
        }
        /// <summary>
        /// Writes the XML to the specified file.
        /// </summary>
        /// <param name="stream">Stream to be written</param>
        /// <param name="root">The root of the XML to be written</param>
        public void Write(Stream stream, SavannahTagNode root)
        {
            root.ResolvePrioritizeInnerXml(IgnoreComments);
            var xml         = root.ToString();
            var declaration = xDeclaration.OuterXml;
            var data        = Encoding.UTF8.GetBytes($"{declaration}\n{xml}\n");

            stream.Write(data, 0, data.Length);
        }