Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Deltares.Dam.Tests.csproj =================================================================== diff -u -r4936 -r4937 --- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Deltares.Dam.Tests.csproj (.../Deltares.Dam.Tests.csproj) (revision 4936) +++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Deltares.Dam.Tests.csproj (.../Deltares.Dam.Tests.csproj) (revision 4937) @@ -53,9 +53,12 @@ PreserveNewest - + PreserveNewest + + PreserveNewest + Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/TestData/Geometry2DImporter/DWP_1.stix =================================================================== diff -u -r4936 -r4937 Binary files differ Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/TestData/Geometry2DImporter/DWP_Aquifer.stix =================================================================== diff -u Binary files differ Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/TestData/Geometry2DImporter/DWP_Sand.stix =================================================================== diff -u -r4936 -r4937 Binary files differ Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Geometry2DImporter/SoilProfile2DImporterTest.cs =================================================================== diff -u -r4936 -r4937 --- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Geometry2DImporter/SoilProfile2DImporterTest.cs (.../SoilProfile2DImporterTest.cs) (revision 4936) +++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Geometry2DImporter/SoilProfile2DImporterTest.cs (.../SoilProfile2DImporterTest.cs) (revision 4937) @@ -207,55 +207,101 @@ Throws.TypeOf().With.Message.Contains($"Could not import soil profile '{invalidSoilProfileName}': ")); } - [Test] - public void WhenStixFileIsImported_ThenSoilProfile2DHasValidGeometry() + [TestFixture] + public class GivenStixFiles { - // Setup - const string fileName = "DWP_Sand.stix"; - Segment segment = CreateSegmentWithProfiles(new[] + private static Segment segment; + private static SoilList availableSoils; + private static IList aquifers; + + [SetUp] + public static void Arrange() { - fileName - }); - SoilList availableSoils = CreateSoilList(new[] - { - "wl_zand (1)", - "veen (1)", - "klei (1)", - "klei antropogeen (1)", - "zand antropogeen (1)" - }); - var aquifers = new[] - { - new Aquifer + const string fileName1 = "DWP_1.stix"; + const string fileName2 = "DWP_Aquifer.stix"; + segment = CreateSegmentWithProfiles(new[] { - StixFileName = fileName, - LayerName = "Sand" // there are 2 layers with the name "Sand" in the stix file - }, - new Aquifer + fileName1, + fileName2 + }); + availableSoils = CreateSoilList(new[] { - StixFileName = fileName, - LayerName = "L 11" - } - }; + "wl_zand", + "veen", + "klei", + "klei antropogeen", + "zand antropogeen" + }); + aquifers = + [ + new Aquifer + { + StixFileName = fileName1, + LayerName = "L 5" + }, + new Aquifer + { + StixFileName = fileName2, + LayerName = "Aquifer" // there are 2 layers with the name "Aquifer" in the stix file + }, + new Aquifer + { + StixFileName = fileName2, + LayerName = "L 11" + } + ]; + } - // Call - IEnumerable soilProfiles = SoilProfile2DImporter.Import(StixTestDataFolder, segment, availableSoils, aquifers); + [Test] + public void WhenImported_ThenSoilProfile2DHasValidGeometry() + { + // Call + List soilProfiles = SoilProfile2DImporter.Import(StixTestDataFolder, segment, availableSoils, aquifers).ToList(); - // Assert - GeometryData geometry = soilProfiles.ElementAt(0).Geometry; - Assert.That(geometry.Surfaces, Has.Count.EqualTo(12)); - ValidationResult[] validationResults = geometry.ValidateGeometry(); - Assert.That(validationResults, Has.Length.EqualTo(0)); - for (var index = 0; index < soilProfiles.ElementAt(0).Surfaces.Count; index++) + // Assert + Assert.That(soilProfiles, Has.Count.EqualTo(2)); + GeometryData geometry = soilProfiles.ElementAt(0).Geometry; + Assert.That(geometry.Surfaces, Has.Count.EqualTo(12)); + ValidationResult[] validationResults = geometry.ValidateGeometry(); + Assert.That(validationResults, Has.Length.EqualTo(0)); + geometry = soilProfiles.ElementAt(1).Geometry; + validationResults = geometry.ValidateGeometry(); + Assert.That(validationResults, Has.Length.EqualTo(0)); + } + + [Test] + public void WhenImported_ThenAquifersAreSetAsExpected() { - var surface = soilProfiles.ElementAt(0).Surfaces[index]; - if (index == 0 || index == 1 || index == 10) + // Call + List soilProfiles = SoilProfile2DImporter.Import(StixTestDataFolder, segment, availableSoils, aquifers).ToList(); + + // Assert + Assert.That(soilProfiles, Has.Count.EqualTo(2)); + SoilProfile2D soilProfile = soilProfiles.ElementAt(0); + for (var index = 0; index < soilProfile.Surfaces.Count; index++) { - Assert.That(surface.IsAquifer, Is.True); + SoilLayer2D surface = soilProfile.Surfaces[index]; + if (index == 4) + { + Assert.That(surface.IsAquifer, Is.True); + } + else + { + Assert.That(surface.IsAquifer, Is.False); + } } - else + soilProfile = soilProfiles.ElementAt(1); + for (var index = 0; index < soilProfile.Surfaces.Count; index++) { - Assert.That(surface.IsAquifer, Is.False); + SoilLayer2D surface = soilProfile.Surfaces[index]; + if (index == 0 || index == 1 || index == 10) + { + Assert.That(surface.IsAquifer, Is.True); + } + else + { + Assert.That(surface.IsAquifer, Is.False); + } } } }