Index: Ringtoets/Piping/src/Ringtoets.Piping.IO/Readers/XMLPipingConfigurationSchema.xsd =================================================================== diff -u -ree94c927bb860c7db9e4035f82aef305809e56fb -r44a47fde40d66f168e0c80d16c82c687dde1e5d1 --- Ringtoets/Piping/src/Ringtoets.Piping.IO/Readers/XMLPipingConfigurationSchema.xsd (.../XMLPipingConfigurationSchema.xsd) (revision ee94c927bb860c7db9e4035f82aef305809e56fb) +++ Ringtoets/Piping/src/Ringtoets.Piping.IO/Readers/XMLPipingConfigurationSchema.xsd (.../XMLPipingConfigurationSchema.xsd) (revision 44a47fde40d66f168e0c80d16c82c687dde1e5d1) @@ -65,6 +65,10 @@ + + + + Index: Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/Readers/PipingConfigurationReaderTest.cs =================================================================== diff -u -ree94c927bb860c7db9e4035f82aef305809e56fb -r44a47fde40d66f168e0c80d16c82c687dde1e5d1 --- Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/Readers/PipingConfigurationReaderTest.cs (.../PipingConfigurationReaderTest.cs) (revision ee94c927bb860c7db9e4035f82aef305809e56fb) +++ Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/Readers/PipingConfigurationReaderTest.cs (.../PipingConfigurationReaderTest.cs) (revision 44a47fde40d66f168e0c80d16c82c687dde1e5d1) @@ -122,7 +122,7 @@ public void Constructor_FileInUse_ThrowCriticalFileReadException() { // Setup - string filePath = Path.Combine(testDirectoryPath, "validConfiguration.xml"); + string filePath = Path.Combine(testDirectoryPath, "validEmptyRoot.xml"); using (new FileStream(filePath, FileMode.Open)) { @@ -161,6 +161,8 @@ [TestCase("invalidStochastStandardDeviationEmpty.xml")] [TestCase("invalidStochastStandardDeviationNoDouble.xml")] [TestCase("invalidStochastStandardDeviationWrongCulture.xml")] + [TestCase("invalidMultiplePhreaticLevelExitStochast.xml")] + [TestCase("invalidMultipleDampingFactorExitStochast.xml")] public void Constructor_FileInvalidBasedOnSchemaDefinition_ThrowCriticalFileReadException(string fileName) { // Setup @@ -299,5 +301,108 @@ Assert.IsNotNull(calculation5); Assert.AreEqual("Calculation 5", calculation5.Name); } + + [Test] + public void Read_ValidConfigurationWithCalculationContainingEmptyStrings_ReturnExpectedReadPipingCalculation() + { + // Setup + string filePath = Path.Combine(testDirectoryPath, "validConfigurationCalculationContainingEmptyStrings.xml"); + var pipingConfigurationReader = new PipingConfigurationReader(filePath); + + // Call + IList readPipingCalculationItems = pipingConfigurationReader.Read().ToList(); + + // Assert + Assert.AreEqual(1, readPipingCalculationItems.Count); + + var calculation = readPipingCalculationItems[0] as ReadPipingCalculation; + Assert.IsNotNull(calculation); + Assert.IsEmpty(calculation.HydraulicBoundaryLocation); + Assert.IsEmpty(calculation.SurfaceLine); + Assert.IsEmpty(calculation.StochasticSoilModel); + Assert.IsEmpty(calculation.StochasticSoilProfile); + } + + [Test] + public void Read_ValidConfigurationWithCalculationContainingNaNs_ReturnExpectedReadPipingCalculation() + { + // Setup + string filePath = Path.Combine(testDirectoryPath, "validConfigurationCalculationContainingNaNs.xml"); + var pipingConfigurationReader = new PipingConfigurationReader(filePath); + + // Call + IList readPipingCalculationItems = pipingConfigurationReader.Read().ToList(); + + // Assert + Assert.AreEqual(1, readPipingCalculationItems.Count); + + var calculation = readPipingCalculationItems[0] as ReadPipingCalculation; + Assert.IsNotNull(calculation); + Assert.IsNaN(calculation.AssessmentLevel); + Assert.IsNaN(calculation.EntryPointL); + Assert.IsNaN(calculation.ExitPointL); + Assert.IsNaN(calculation.PhreaticLevelExitMean); + Assert.IsNaN(calculation.PhreaticLevelExitStandardDeviation); + Assert.IsNaN(calculation.DampingFactorExitMean); + Assert.IsNaN(calculation.DampingFactorExitStandardDeviation); + } + + [Test] + public void Read_ValidConfigurationWithFullCalculationContainingHydraulicBoundaryLocation_ReturnExpectedReadPipingCalculation() + { + // Setup + string filePath = Path.Combine(testDirectoryPath, "validConfigurationFullCalculationContainingHydraulicBoundaryLocation.xml"); + var pipingConfigurationReader = new PipingConfigurationReader(filePath); + + // Call + IList readPipingCalculationItems = pipingConfigurationReader.Read().ToList(); + + // Assert + Assert.AreEqual(1, readPipingCalculationItems.Count); + + var calculation = readPipingCalculationItems[0] as ReadPipingCalculation; + Assert.IsNotNull(calculation); + Assert.AreEqual("Calculation", calculation.Name); + Assert.IsNull(calculation.AssessmentLevel); + Assert.AreEqual("HRlocatie", calculation.HydraulicBoundaryLocation); + Assert.AreEqual("Profielschematisatie", calculation.SurfaceLine); + Assert.AreEqual(1.1, calculation.EntryPointL); + Assert.AreEqual(2.2, calculation.ExitPointL); + Assert.AreEqual("Ondergrondmodel", calculation.StochasticSoilModel); + Assert.AreEqual("Ondergrondschematisatie", calculation.StochasticSoilProfile); + Assert.AreEqual(3.3, calculation.PhreaticLevelExitMean); + Assert.AreEqual(4.4, calculation.PhreaticLevelExitStandardDeviation); + Assert.AreEqual(5.5, calculation.DampingFactorExitMean); + Assert.AreEqual(6.6, calculation.DampingFactorExitStandardDeviation); + } + + [Test] + public void Read_ValidConfigurationWithFullCalculationContainingAssessmentLevel_ReturnExpectedReadPipingCalculation() + { + // Setup + string filePath = Path.Combine(testDirectoryPath, "validConfigurationFullCalculationContainingAssessmentLevel.xml"); + var pipingConfigurationReader = new PipingConfigurationReader(filePath); + + // Call + IList readPipingCalculationItems = pipingConfigurationReader.Read().ToList(); + + // Assert + Assert.AreEqual(1, readPipingCalculationItems.Count); + + var calculation = readPipingCalculationItems[0] as ReadPipingCalculation; + Assert.IsNotNull(calculation); + Assert.AreEqual("Calculation", calculation.Name); + Assert.AreEqual(1.1, calculation.AssessmentLevel); + Assert.IsNull(calculation.HydraulicBoundaryLocation); + Assert.AreEqual("Profielschematisatie", calculation.SurfaceLine); + Assert.AreEqual(2.2, calculation.EntryPointL); + Assert.AreEqual(3.3, calculation.ExitPointL); + Assert.AreEqual("Ondergrondmodel", calculation.StochasticSoilModel); + Assert.AreEqual("Ondergrondschematisatie", calculation.StochasticSoilProfile); + Assert.AreEqual(4.4, calculation.PhreaticLevelExitMean); + Assert.AreEqual(5.5, calculation.PhreaticLevelExitStandardDeviation); + Assert.AreEqual(6.6, calculation.DampingFactorExitMean); + Assert.AreEqual(7.7, calculation.DampingFactorExitStandardDeviation); + } } } \ No newline at end of file Index: Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/invalidMultipleDampingFactorExitStochast.xml =================================================================== diff -u --- Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/invalidMultipleDampingFactorExitStochast.xml (revision 0) +++ Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/invalidMultipleDampingFactorExitStochast.xml (revision 44a47fde40d66f168e0c80d16c82c687dde1e5d1) @@ -0,0 +1,13 @@ + + + + + 0.000 + 0.100 + + + 0.000 + 0.100 + + + \ No newline at end of file Index: Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/invalidMultiplePhreaticLevelExitStochast.xml =================================================================== diff -u --- Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/invalidMultiplePhreaticLevelExitStochast.xml (revision 0) +++ Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/invalidMultiplePhreaticLevelExitStochast.xml (revision 44a47fde40d66f168e0c80d16c82c687dde1e5d1) @@ -0,0 +1,13 @@ + + + + + 0.000 + 0.100 + + + 0.000 + 0.100 + + + \ No newline at end of file Fisheye: Tag 44a47fde40d66f168e0c80d16c82c687dde1e5d1 refers to a dead (removed) revision in file `Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfiguration.xml'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationCalculationContainingEmptyStrings.xml =================================================================== diff -u --- Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationCalculationContainingEmptyStrings.xml (revision 0) +++ Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationCalculationContainingEmptyStrings.xml (revision 44a47fde40d66f168e0c80d16c82c687dde1e5d1) @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file Index: Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationCalculationContainingNaNs.xml =================================================================== diff -u --- Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationCalculationContainingNaNs.xml (revision 0) +++ Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationCalculationContainingNaNs.xml (revision 44a47fde40d66f168e0c80d16c82c687dde1e5d1) @@ -0,0 +1,16 @@ + + + + NaN + NaN + NaN + + NaN + NaN + + + NaN + NaN + + + \ No newline at end of file Index: Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationFullCalculationContainingAssessmentLevel.xml =================================================================== diff -u --- Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationFullCalculationContainingAssessmentLevel.xml (revision 0) +++ Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationFullCalculationContainingAssessmentLevel.xml (revision 44a47fde40d66f168e0c80d16c82c687dde1e5d1) @@ -0,0 +1,19 @@ + + + + 1.1 + Profielschematisatie + 2.2 + 3.3 + Ondergrondmodel + Ondergrondschematisatie + + 4.4 + 5.5 + + + 6.6 + 7.7 + + + \ No newline at end of file Index: Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationFullCalculationContainingHydraulicBoundaryLocation.xml =================================================================== diff -u --- Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationFullCalculationContainingHydraulicBoundaryLocation.xml (revision 0) +++ Ringtoets/Piping/test/Ringtoets.Piping.IO.Test/test-data/PipingConfigurationReader/validConfigurationFullCalculationContainingHydraulicBoundaryLocation.xml (revision 44a47fde40d66f168e0c80d16c82c687dde1e5d1) @@ -0,0 +1,19 @@ + + + + HRlocatie + Profielschematisatie + 1.1 + 2.2 + Ondergrondmodel + Ondergrondschematisatie + + 3.3 + 4.4 + + + 5.5 + 6.6 + + + \ No newline at end of file