2020-12-20 08:36:11 +01:00
|
|
|
// Copyright (c) Umbraco.
|
|
|
|
|
// See LICENSE for more details.
|
|
|
|
|
|
|
|
|
|
using System.Xml;
|
2013-11-12 16:07:53 +11:00
|
|
|
using System.Xml.Linq;
|
|
|
|
|
using NUnit.Framework;
|
2021-02-18 11:06:02 +01:00
|
|
|
using Umbraco.Extensions;
|
2013-11-12 16:07:53 +11:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Core;
|
|
|
|
|
|
|
|
|
|
[TestFixture]
|
|
|
|
|
public class XmlExtensionsTests
|
2013-11-12 16:07:53 +11:00
|
|
|
{
|
2022-06-21 08:09:38 +02:00
|
|
|
[Test]
|
|
|
|
|
public void XCDataToXmlNode()
|
2013-11-12 16:07:53 +11:00
|
|
|
{
|
2022-06-21 08:09:38 +02:00
|
|
|
var cdata = new XElement("test", new XCData("hello world"));
|
|
|
|
|
var xdoc = new XmlDocument();
|
2013-11-12 16:07:53 +11:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
var xmlNode = cdata.GetXmlNode(xdoc);
|
2013-11-12 16:07:53 +11:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
Assert.AreEqual("hello world", xmlNode.InnerText);
|
|
|
|
|
}
|
2013-11-12 16:07:53 +11:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
[Test]
|
|
|
|
|
public void XTextToXmlNode()
|
|
|
|
|
{
|
|
|
|
|
var cdata = new XElement("test", new XText("hello world"));
|
|
|
|
|
var xdoc = new XmlDocument();
|
2013-11-12 16:07:53 +11:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
var xmlNode = cdata.GetXmlNode(xdoc);
|
2013-11-12 16:07:53 +11:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
Assert.AreEqual("hello world", xmlNode.InnerText);
|
|
|
|
|
}
|
2015-09-11 13:16:02 +02:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
[Test]
|
|
|
|
|
public void ToXmlNodeIsNonDestructive()
|
|
|
|
|
{
|
|
|
|
|
const string xml = "<root><foo attr=\"123\">hello</foo><bar>world</bar></root>";
|
2015-09-11 13:16:02 +02:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
var cdata = new XElement("test", new XText("hello world"));
|
|
|
|
|
var xdoc = new XmlDocument();
|
|
|
|
|
xdoc.LoadXml(xml);
|
2015-09-11 13:16:02 +02:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
var xmlNode = cdata.GetXmlNode(xdoc);
|
2015-09-11 13:16:02 +02:00
|
|
|
|
2022-06-21 08:09:38 +02:00
|
|
|
Assert.AreEqual("hello world", xmlNode.InnerText);
|
|
|
|
|
Assert.AreEqual(xml, xdoc.OuterXml);
|
2013-11-12 16:07:53 +11:00
|
|
|
}
|
2017-07-20 11:21:28 +02:00
|
|
|
}
|