Index: DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs =================================================================== diff -u -r2954 -r2957 --- DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs (.../FillXmlInputFromDamUiTests.cs) (revision 2954) +++ DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs (.../FillXmlInputFromDamUiTests.cs) (revision 2957) @@ -63,6 +63,7 @@ // Load input file input = DamXmlSerialization.LoadInputFromXmlFile(inputFilename); DamProjectData actualDamProjectData = FillDamUiFromXmlInput.CreateDamProjectData(input); + CompareSoilLists(actualDamProjectData.WaterBoard.Dikes[0].SoilList, expectedDamProjectData.WaterBoard.Dikes[0].SoilList); CompareDamProjectData(actualDamProjectData, expectedDamProjectData); } @@ -584,6 +585,41 @@ } + /// Compares the soil lists. + /// The object comparer does not handle NaN's correctly, therefore this mehthod is created. + /// The actual soil list. + /// The expected soil list. + private void CompareSoilLists(SoilList actualSoilList, SoilList expectedSoilList) + { + const string errorMessage = "Actual and expected values of {0} are not equal"; + foreach (Soil actualSoil in actualSoilList.Soils) + { + Soil expectedSoil = expectedSoilList.GetSoilByName(actualSoil.Name); + Assert.IsTrue(actualSoil.AbovePhreaticLevel.Equals(expectedSoil.AbovePhreaticLevel), string.Format(errorMessage, "AbovePhreaticLevel")); + Assert.IsTrue(actualSoil.BelowPhreaticLevel.Equals(expectedSoil.BelowPhreaticLevel), string.Format(errorMessage, "BelowPhreaticLevel")); + Assert.IsTrue(actualSoil.DryUnitWeight.Equals(expectedSoil.DryUnitWeight), string.Format(errorMessage, "DryUnitWeight")); + Assert.IsTrue(actualSoil.BeddingAngle.Equals(expectedSoil.BeddingAngle), string.Format(errorMessage, "BeddingAngle")); + Assert.IsTrue(actualSoil.DiameterD70.Equals(expectedSoil.DiameterD70), string.Format(errorMessage, "DiameterD70")); + Assert.IsTrue(actualSoil.DiameterD70.Equals(expectedSoil.DiameterD70), string.Format(errorMessage, "DiameterD70")); + Assert.IsTrue(actualSoil.DiameterD90.Equals(expectedSoil.DiameterD90), string.Format(errorMessage, "DiameterD90")); + Assert.IsTrue(actualSoil.DiameterD90.Equals(expectedSoil.DiameterD90), string.Format(errorMessage, "DiameterD90")); + Assert.IsTrue(actualSoil.PermeabKx.Equals(expectedSoil.PermeabKx), string.Format(errorMessage, "PermeabKx")); + Assert.IsTrue(actualSoil.WhitesConstant.Equals(expectedSoil.WhitesConstant), string.Format(errorMessage, "WhitesConstant")); + Assert.IsTrue(actualSoil.ShearStrengthModel.Equals(expectedSoil.ShearStrengthModel), string.Format(errorMessage, "ShearStrengthModel")); + Assert.IsTrue(actualSoil.UseDefaultShearStrengthModel.Equals(expectedSoil.UseDefaultShearStrengthModel), string.Format(errorMessage, "UseDefaultShearStrengthModel")); + Assert.IsTrue(actualSoil.Cohesion.Equals(expectedSoil.Cohesion), string.Format(errorMessage, "Cohesion")); + Assert.IsTrue(actualSoil.FrictionAngle.Equals(expectedSoil.FrictionAngle), string.Format(errorMessage, "FrictionAngle")); + Assert.IsTrue(actualSoil.OCR.Equals(expectedSoil.OCR), string.Format(errorMessage, "OCR")); + Assert.IsTrue(actualSoil.RestSlope.Equals(expectedSoil.RestSlope), string.Format(errorMessage, "RestSlope")); + Assert.IsTrue(actualSoil.DilatancyType.Equals(expectedSoil.DilatancyType), string.Format(errorMessage, "DilatancyType")); + Assert.IsTrue(actualSoil.StrengthIncreaseExponent.Equals(expectedSoil.StrengthIncreaseExponent), string.Format(errorMessage, "StrengthIncreaseExponent")); + Assert.IsTrue(actualSoil.RRatio.Equals(expectedSoil.RRatio), string.Format(errorMessage, "RRatio")); + Assert.IsTrue(actualSoil.RatioCuPc.Equals(expectedSoil.RatioCuPc), string.Format(errorMessage, "RatioCuPc")); + + } + } + + private void CompareDamProjectData(DamProjectData actual, DamProjectData expected) { var compare = new CompareLogic { Config = { MaxDifferences = 10 } };