Index: dam engine/trunk/src/Deltares.DamEngine.Interface.Tests/FillDamFromXmlInputTests.cs =================================================================== diff -u -r436 -r441 --- dam engine/trunk/src/Deltares.DamEngine.Interface.Tests/FillDamFromXmlInputTests.cs (.../FillDamFromXmlInputTests.cs) (revision 436) +++ dam engine/trunk/src/Deltares.DamEngine.Interface.Tests/FillDamFromXmlInputTests.cs (.../FillDamFromXmlInputTests.cs) (revision 441) @@ -1,14 +1,41 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using Deltares.DamEngine.Data.General; +using Deltares.DamEngine.Io; +using Deltares.DamEngine.Io.XmlInput; +using Deltares.DamEngine.Interface; +using KellermanSoftware.CompareNetObjects; using NUnit.Framework; namespace Deltares.DamEngine.Interface.Tests { [TestFixture] public class FillDamFromXmlInputTests { + [Test] + public void CanWriteAndReadDamProjectDataToXml() + { + const string inputFilename = "InputFile.xml"; + DamProjectData expectedDamProjectData = CreateExampleDamProjectData(); + Input input = FillXmlInputFromDam.CreateInput(expectedDamProjectData); + DamXmlSerialization.SaveInputAsXml(inputFilename, input); + input = DamXmlSerialization.LoadInputFromXml(inputFilename); + DamProjectData actualDamProjectData = FillDamFromXmlInput.CreateDamProjectData(input); + CompareDamProjectData(actualDamProjectData, expectedDamProjectData); + } + + private DamProjectData CreateExampleDamProjectData() + { + var damProjectData = new DamProjectData(); + damProjectData.DamProjectType = DamProjectType.Design; + return damProjectData; + } + + private void CompareDamProjectData(DamProjectData actual, DamProjectData expected) + { + var compare = new CompareLogic { Config = { MaxDifferences = 100 } }; + var result = compare.Compare(expected, actual); + Assert.AreEqual(0, result.Differences.Count, "Differences found read/write Input object"); + + } } + }