Index: src/Deltares.DSoilModel.Data.Tests/DSoilModelIOTest.cs =================================================================== diff -u -r296 -r347 --- src/Deltares.DSoilModel.Data.Tests/DSoilModelIOTest.cs (.../DSoilModelIOTest.cs) (revision 296) +++ src/Deltares.DSoilModel.Data.Tests/DSoilModelIOTest.cs (.../DSoilModelIOTest.cs) (revision 347) @@ -1,6 +1,8 @@ using System.IO; using System.Linq; +using System.Reflection; using System.Text; +using System.Xml; using Deltares.Geotechnics; using Deltares.Geotechnics.IO.Importers; using Deltares.Standard.EventPublisher; @@ -274,5 +276,41 @@ { return Path.GetFullPath(@"..\..\Deltares.DSoilModel.Data.Tests\TestFiles"); } + + private string GetNodeAttribute(XmlNode node, string attribute) + { + return (string)typeof(DSoilModelIO).GetMethod("GetNodeAttribute", BindingFlags.NonPublic | BindingFlags.Static).Invoke(null, new object[] { node , attribute }); + } + + [Test] + public void GetNodeAttributeTest() + { + var doc = new XmlDocument(); + var node = doc.CreateNode(XmlNodeType.Element, "SomeName", "SomeUrl"); + + var res = GetNodeAttribute(null, "SomeAttribute"); + Assert.IsNull(res, "No node - no attributes"); + + res = GetNodeAttribute(node, "SomeAttribute"); + Assert.IsNull(res, "Attribute doesn't exist"); + + var attr = doc.CreateAttribute("Attr1"); + attr.Value = "Text1"; + node.Attributes.Append(attr); + + res = GetNodeAttribute(node, "Attr1"); + Assert.AreEqual("Text1", res, "Attribute doesn't exist"); + } + + [Test] + public void SaveXmlTest() + { + var fileName = Path.Combine("TempFiles","saveXml.test"); + var project = new DSoilModelProject(); + + DSoilModelIO.SaveXML(fileName, project); + + Assert.IsTrue(File.Exists(fileName)); + } } } \ No newline at end of file