Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/TestData/CSVData/Full1DProjectMissingSigmaTauTable/csvfiles/soils.csv =================================================================== diff -u -r4649 -r4749 --- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/TestData/CSVData/Full1DProjectMissingSigmaTauTable/csvfiles/soils.csv (.../soils.csv) (revision 4649) +++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/TestData/CSVData/Full1DProjectMissingSigmaTauTable/csvfiles/soils.csv (.../soils.csv) (revision 4749) @@ -4,12 +4,12 @@ BSS;#FFFFFF;Sand;20.00;20.00;0.00;30.00;170.00;0.17;MohrCoulomb;0.00; CCC;#FFFFFF;Clay;17.00;17.00;5.00;22.00;0.01;1e-05;SigmaTauTable;0.00;Missing EFG;#FFFFFF;Sand;21.00;21.00;0.00;35.00;400.00;0.4;MohrCoulomb;0.00; -ETL;#FFFFFF;Clay;21.00;21.00;15.00;22.00;0.01;1e-05;MohrCoulomb;0.00; +ETL;#FFFFFF;Clay;21.00;21.00;15.00;22.00;0.01;1e-05;MohrCoulomb;0.00;MissingNotUsed FCC;#FFFFFF;Sand;20.00;20.00;0.00;30.00;350.00;0.35;MohrCoulomb;0.00; FCF;#FFFFFF;Sand;19.00;19.00;0.00;27.00;170.00;0.17;MohrCoulomb;0.00; FCM;#FFFFFF;Sand;20.00;20.00;0.00;30.00;250.00;0.25;MohrCoulomb;0.00; -FCO;#FFFFFF;Clay;17.00;17.00;2.00;20.00;0.01;1e-05;MohrCoulomb;0.00; -FFG;#FFFFFF;Clay;19.00;19.00;8.00;27.50;0.01;1e-05;MohrCoulomb;0.00; +FCO;#FFFFFF;Clay;17.00;17.00;2.00;20.00;0.01;1e-05;SigmaTauTable;0.00;CurveKlei +FFG;#FFFFFF;Clay;19.00;19.00;8.00;27.50;0.01;1e-05;MohrCoulomb;0.00;CurveKlei FFO;#FFFFFF;Clay;15.00;15.00;2.00;20.00;0.01;1e-05;MohrCoulomb;0.00; FFS;#FFFFFF;Clay;19.00;19.00;5.00;30.00;0.01;1e-05;MohrCoulomb;0.00; FPR;#FFFFFF;Peat;13.00;13.00;2.00;20.00;0.01;1e-05;MohrCoulomb;0.00; Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Dike.cs =================================================================== diff -u -r4618 -r4749 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Dike.cs (.../Dike.cs) (revision 4618) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Dike.cs (.../Dike.cs) (revision 4749) @@ -231,12 +231,13 @@ soil.UseDefaultShearStrengthModel = false; soil.ShearStrengthModel = soilRecord.ShearStrengthModel; - if (soilRecord.ShearStrengthModel == Geotechnics.Soils.ShearStrengthModel.StressTable) + StressCurve stressCurve = ImportedCsvStressCurves.Find(sc => sc.Name == soilRecord.SigmaTauCurveName); + if (stressCurve == null) { - StressCurve stressCurve = ImportedCsvStressCurves.Find(sc => sc.Name == soilRecord.SigmaTauCurveName); - soil.StressTable = stressCurve; - // Note: if the stress curve is null, the soil will be removed from the soil list in TryToMakeSoilDataConsistent() + stressCurve = new StressCurve{ Name = soilRecord.SigmaTauCurveName}; } + soil.StressTable = stressCurve; + // Note: if the stress curve was not found, the soil will be removed from the soil list in TryToMakeSoilDataConsistent() if (soilRecord.StrengthIncreaseExponent.HasValue) { @@ -420,11 +421,12 @@ // that are in the database but not yet in the soil list. foreach (Soil soil in importedCsvSoils) { - if ((soil.ShearStrengthModel == Geotechnics.Soils.ShearStrengthModel.StressTable) && (soil.StressTable == null)) + if ((soil.StressTable.SigmaTaus.Count == 0) && (soil.StressTable.Name != "")) { soilList.Soils.Remove(soil); errorSoils.Add(soil); - soilErrorMessages.Add(string.Format(LocalizationManager.GetTranslatedText(GetType(), "SigmaTauCurveNotFoundInCsvFile"), soil.Name)); + soilErrorMessages.Add(string.Format(LocalizationManager.GetTranslatedText(GetType(), "SigmaTauCurveNotFoundInCsvFile"), + soil.StressTable.Name, soil.Name)); } Soil existingSoil = soilList.GetSoilByName(soil.Name); Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/WaterBoardImporterTests.cs =================================================================== diff -u -r4638 -r4749 --- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/WaterBoardImporterTests.cs (.../WaterBoardImporterTests.cs) (revision 4638) +++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/WaterBoardImporterTests.cs (.../WaterBoardImporterTests.cs) (revision 4749) @@ -185,13 +185,16 @@ DamProjectType.Calamity, null, out logMessages); - Assert.That(logMessages.Count, Is.GreaterThan(0)); - Assert.That(logMessages[0].Message, Contains.Substring("Sigma-Tau curve table not found in CSV file for soil CCC (or sigmataucurves.csv missing).")); - + Assert.That(logMessages, Has.Count.GreaterThan(0)); + Assert.Multiple(() => + { + Assert.That(logMessages[0].Message, Contains.Substring("Sigma-Tau curve table Missing not found in CSV file for soil CCC (or sigmataucurves.csv missing).")); + Assert.That(logMessages[1].Message, Contains.Substring("Sigma-Tau curve table MissingNotUsed not found in CSV file for soil ETL (or sigmataucurves.csv missing).")); + }); // Check Dike - Assert.That(waterBoard.Dikes.Count, Is.EqualTo(1)); + Assert.That(waterBoard.Dikes, Has.Count.EqualTo(1)); //Check locations - Assert.That(waterBoard.Dikes[0].Locations.Count, Is.EqualTo(0)); + Assert.That(waterBoard.Dikes[0].Locations, Has.Count.EqualTo(0)); } [Test]