public void AppendOrModifyChildShouldNotModifyIfParentNodeDoesNotExist() { var settingsXml = @"<RunSettings></RunSettings>"; var xmlDocument = this.GetXmlDocument(settingsXml); XmlUtilities.AppendOrModifyChild(xmlDocument, @"/RunSettings/RC/RD", "RD", null); Assert.AreEqual(settingsXml, xmlDocument.OuterXml); }
public void AppendOrModifyChildShouldCreateAnEmptyNewNodeIfInnerXmlPassedInIsNull() { var settingsXml = @"<RunSettings></RunSettings>"; var xmlDocument = this.GetXmlDocument(settingsXml); XmlUtilities.AppendOrModifyChild(xmlDocument, @"/RunSettings/RC", "RC", null); var rcxmlDocument = xmlDocument.SelectSingleNode(@"/RunSettings/RC"); Assert.IsNotNull(rcxmlDocument); Assert.AreEqual(string.Empty, rcxmlDocument.InnerXml); }
public void AppendOrModifyChildShouldNotModifyExistingXmlIfInnerXmlPassedInIsNull() { var settingsXml = @"<RunSettings><RC>abc</RC></RunSettings>"; var xmlDocument = this.GetXmlDocument(settingsXml); XmlUtilities.AppendOrModifyChild(xmlDocument, @"/RunSettings/RC", "RC", null); var rcxmlDocument = xmlDocument.SelectSingleNode(@"/RunSettings/RC"); Assert.IsNotNull(rcxmlDocument); Assert.AreEqual("abc", rcxmlDocument.InnerXml); }
public void AppendOrModifyChildShouldAppendANewNodeWithEscapingSpecialChars() { var settingsXml = @"<RunSettings></RunSettings>"; var xmlDocument = this.GetXmlDocument(settingsXml); XmlUtilities.AppendOrModifyChild(xmlDocument, @"/RunSettings/RC", "RC", "a&b<c>d\"e'f"); var rcxmlDocument = xmlDocument.SelectSingleNode(@"/RunSettings/RC"); Assert.IsNotNull(rcxmlDocument); Assert.AreEqual("a&b<c>d\"e'f", rcxmlDocument.InnerXml); Assert.AreEqual("a&b<c>d\"e'f", rcxmlDocument.InnerText); }
public void AppendOrModifyChildShouldCreateAnEmptyNewNodeIfInnerXmlPassedInIsNull() { var settingsXml = @"<RunSettings></RunSettings>"; var navigator = this.GetNavigator(settingsXml); navigator.MoveToChild("RunSettings", string.Empty); XmlUtilities.AppendOrModifyChild(navigator, @"/RunSettings/RC", "RC", null); var rcNavigator = navigator.SelectSingleNode(@"/RunSettings/RC"); Assert.IsNotNull(rcNavigator); Assert.AreEqual(string.Empty, rcNavigator.InnerXml); }
public void AppendOrModifyChildShouldModifyExistingNode() { var settingsXml = @"<RunSettings><RC>abc</RC></RunSettings>"; var navigator = this.GetNavigator(settingsXml); navigator.MoveToChild("RunSettings", string.Empty); XmlUtilities.AppendOrModifyChild(navigator, @"/RunSettings/RC", "RC", "ab"); var rcNavigator = navigator.SelectSingleNode(@"/RunSettings/RC"); Assert.IsNotNull(rcNavigator); Assert.AreEqual("ab", rcNavigator.InnerXml); }