Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs =================================================================== diff -u -r2004 -r2009 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 2004) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators.Tests/KernelWrappers/MacroStabilityCommon/MacroStabilityIoTests.cs (.../MacroStabilityIoTests.cs) (revision 2009) @@ -19,6 +19,7 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; using System.IO; using NUnit.Framework; using Deltares.MacroStability.Kernel; @@ -27,6 +28,8 @@ using Deltares.DamEngine.Calculators.KernelWrappers.MacroStabilityCommon.MacroStabilityIo; using Deltares.DamEngine.Data.Geotechnics; using Deltares.DamEngine.TestHelpers.Factories; +using Deltares.MacroStability.Data; +using Deltares.MacroStability.Standard; using KellermanSoftware.CompareNetObjects; namespace Deltares.DamEngine.Calculators.Tests.KernelWrappers.MacroStabilityCommon @@ -99,7 +102,7 @@ [TestCase("Benchmark 1-01b.wti")] [TestCase("Benchmark 2-04a.wti")] - [Category(Categories.WorkInProgress)] + //[Category(Categories.WorkInProgress)] public void GivenWtiFileWhenFillingToDamEngineDataAndWritingBackToKernelDataThenTheKernelModelsAreEqual(string fileNameIn) { // Given Wti file @@ -111,7 +114,6 @@ FillDamEngineFromWti fillDamEngineFromWti = new FillDamEngineFromWti(); fillDamEngineFromWti.FillDamProjectDataFromKernelModel(expectedKernelModel); - // And writing back to kernel data FillWtiKernelData fillWtiKernelData = new FillWtiKernelData() { @@ -127,10 +129,27 @@ File.WriteAllText(fullFileNameOut, xmlOutput); // Then the kernel models are equal - // Assert.AreEqual(xmlInput, xmlOutput); + CompareStabilityModel(expectedKernelModel.StabilityModel, actualKernelModel.StabilityModel); + return; + //Enable asserts when code is implemented + var compare = new CompareLogic { Config = { MaxDifferences = 100 } }; + compare.Config.MembersToIgnore = new List + { + }; + var result = compare.Compare(expectedKernelModel.StabilityModel.SoilModel, actualKernelModel.StabilityModel.SoilModel); + Assert.AreEqual(0, result.Differences.Count, "Differences found read/write kernel SoilModel"); + result = compare.Compare(expectedKernelModel.StabilityModel.SoilProfile, actualKernelModel.StabilityModel.SoilProfile); + Assert.AreEqual(0, result.Differences.Count, "Differences found read/write kernel SoilProfile"); } + private void CompareStabilityModel(StabilityModel expectedStabilityModel, StabilityModel actualStabilityModel) + { + Assert.AreEqual(expectedStabilityModel.SearchAlgorithm, actualStabilityModel.SearchAlgorithm); + Assert.AreEqual(expectedStabilityModel.ModelOption, actualStabilityModel.ModelOption); + Assert.AreEqual(expectedStabilityModel.GridOrientation, actualStabilityModel.GridOrientation); + } + [TestCase("ValidateOk.xml")] [TestCase("ValidateError.xml")] public void GivenValidationResultFileWhenDeserializingAndSerializingThenTheStringsAreEqual(string fileNameIn) @@ -142,7 +161,7 @@ string xmlInput = File.ReadAllText(fullFileNameIn); string fileNameOut = fileNameIn + ".out"; string fullFileNameOut = Path.Combine(WtiFilesMap, fileNameOut); - var validationResults = WtiDeserializer.DeserializeValidation(xmlInput); + IValidationResult[] validationResults = WtiDeserializer.DeserializeValidation(xmlInput); string xmlOutput = WtiSerializer.SerializeValidation(validationResults); File.WriteAllText(fullFileNameOut, xmlOutput);