Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs =================================================================== diff -u -r2002 -r2003 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 2002) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 2003) @@ -96,9 +96,38 @@ } - private DamProjectData CreateExampleDamProjectData() + [TestCase("Benchmark 1-01b.wti")] + [TestCase("Benchmark 2-04a.wti")] + [Category(Categories.WorkInProgress)] + public void GivenWtiFileWhenFillingToDamEngineDataAndWritingBackToKernelDataThenTheResultingFileIsEqualToOriginalFile(string fileNameIn) { - return TestDataCreator.CreateExampleDamProjectData(); + // Given Wti file + string fullFileNameIn = Path.Combine(WtiFilesMap, fileNameIn); + + // When filling to DamEngine data + string xmlInput = File.ReadAllText(fullFileNameIn); + KernelModel kernelModel = WtiDeserializer.Deserialize(xmlInput); + FillDamEngineFromWti fillDamEngineFromWti = new FillDamEngineFromWti(); + fillDamEngineFromWti.FillDamProjectDataFromKernelModel(kernelModel); + + + // And writing back to kernel data + FillWtiKernelData fillWtiKernelData = new FillWtiKernelData() + { + FailureMechanismParametersMStab = fillDamEngineFromWti.FailureMechanismParametersMStab, + Location = fillDamEngineFromWti.Location, + SoilProfile2D = fillDamEngineFromWti.SoilProfile2D, + SurfaceLine2 = fillDamEngineFromWti.SurfaceLine2 + }; + KernelModel actualKernelModel = fillWtiKernelData.CreateKernelModel(); + string xmlOutput = WtiSerializer.Serialize(actualKernelModel); + string fileNameOut = fileNameIn + ".out"; + string fullFileNameOut = Path.Combine(WtiFilesMap, fileNameOut); + File.WriteAllText(fullFileNameOut, xmlOutput); + + // Then the resulting file is equal to the original file + // Assert.AreEqual(xmlInput, xmlOutput); + } [TestCase("ValidateOk.xml")] @@ -137,5 +166,10 @@ // Then the strings are equal Assert.AreEqual(xmlInput, xmlOutput); } + private DamProjectData CreateExampleDamProjectData() + { + return TestDataCreator.CreateExampleDamProjectData(); + } + } }