Index: Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingSemiProbabilisticCalculationServiceTest.cs =================================================================== diff -u -r37e31f1893a9cfe14e9f05779eb6a0e12f6d7b6b -rcfefec5a1180c70370d17ae82a7629e0d2ac24b7 --- Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingSemiProbabilisticCalculationServiceTest.cs (.../PipingSemiProbabilisticCalculationServiceTest.cs) (revision 37e31f1893a9cfe14e9f05779eb6a0e12f6d7b6b) +++ Ringtoets/Piping/test/Ringtoets.Piping.Service.Test/PipingSemiProbabilisticCalculationServiceTest.cs (.../PipingSemiProbabilisticCalculationServiceTest.cs) (revision cfefec5a1180c70370d17ae82a7629e0d2ac24b7) @@ -1,4 +1,5 @@ using System; +using Core.Common.Base.Data; using Core.Common.TestUtil; using NUnit.Framework; using Ringtoets.Piping.Data; @@ -27,10 +28,10 @@ PipingSemiProbabilisticCalculationService.Calculate(calculation); // Call - double result = calculation.SemiProbabilisticOutput.UpliftProbability; + RoundedDouble result = calculation.SemiProbabilisticOutput.UpliftProbability; // Assert - Assert.AreEqual(expectedResult, result, 1e-8); + Assert.AreEqual(expectedResult, result, GetAccuracy(result)); } [Test] @@ -52,10 +53,10 @@ PipingSemiProbabilisticCalculationService.Calculate(calculation); // Call - double result = calculation.SemiProbabilisticOutput.HeaveProbability; + RoundedDouble result = calculation.SemiProbabilisticOutput.HeaveProbability; // Assert - Assert.AreEqual(expectedResult, result, 1e-8); + Assert.AreEqual(expectedResult, result, GetAccuracy(result)); } [Test] @@ -77,10 +78,10 @@ PipingSemiProbabilisticCalculationService.Calculate(calculation); // Call - double result = calculation.SemiProbabilisticOutput.SellmeijerProbability; + RoundedDouble result = calculation.SemiProbabilisticOutput.SellmeijerProbability; // Assert - Assert.AreEqual(expectedResult, result, 1e-8); + Assert.AreEqual(expectedResult, result, GetAccuracy(result)); } [Test] @@ -104,10 +105,10 @@ PipingSemiProbabilisticCalculationService.Calculate(calculation); // Call - double result = calculation.SemiProbabilisticOutput.PipingReliability; + RoundedDouble result = calculation.SemiProbabilisticOutput.PipingReliability; // Assert - Assert.AreEqual(expectedResult, result, 1e-8); + Assert.AreEqual(expectedResult, result, GetAccuracy(result)); } [Test] @@ -130,10 +131,10 @@ PipingSemiProbabilisticCalculationService.Calculate(calculation); // Call - double result = calculation.SemiProbabilisticOutput.RequiredReliability; + RoundedDouble result = calculation.SemiProbabilisticOutput.RequiredReliability; // Assert - Assert.AreEqual(expectedResult, result, 1e-8); + Assert.AreEqual(expectedResult, result, GetAccuracy(result)); } [Test] @@ -161,10 +162,10 @@ PipingSemiProbabilisticCalculationService.Calculate(calculation); // Call - double result = calculation.SemiProbabilisticOutput.PipingFactorOfSafety; + RoundedDouble result = calculation.SemiProbabilisticOutput.PipingFactorOfSafety; // Assert - Assert.AreEqual(expectedResult, result, 1e-8); + Assert.AreEqual(expectedResult, result, GetAccuracy(result)); } [Test] @@ -191,10 +192,10 @@ PipingSemiProbabilisticCalculationService.Calculate(calculation); // Call - double result = calculation.SemiProbabilisticOutput.PipingFactorOfSafety; + RoundedDouble result = calculation.SemiProbabilisticOutput.PipingFactorOfSafety; // Assert - Assert.AreEqual(calculation.SemiProbabilisticOutput.RequiredReliability / calculation.SemiProbabilisticOutput.PipingReliability, result, 1e-8); + Assert.AreEqual(calculation.SemiProbabilisticOutput.RequiredReliability / calculation.SemiProbabilisticOutput.PipingReliability, result, GetAccuracy(result)); } [Test] @@ -218,11 +219,12 @@ PipingSemiProbabilisticCalculationService.Calculate(pipingCalculation); // Assert - Assert.AreEqual(1.134713444, pipingCalculation.SemiProbabilisticOutput.PipingFactorOfSafety, 1e-8); + RoundedDouble result = pipingCalculation.SemiProbabilisticOutput.PipingFactorOfSafety; + Assert.AreEqual(1.134713444, result, GetAccuracy(result)); } [Test] - public void Calculate_MissingOutput_ThrowsArgumentNullException() + public void Calculate_MissingOutput_ThrowsArgumentException() { // Setup var generalInput = new GeneralPipingInput(); @@ -232,7 +234,7 @@ TestDelegate test = () => PipingSemiProbabilisticCalculationService.Calculate(pipingCalculation); // Assert - TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, "Cannot perform a semi-probabilistic calculation without output form the piping kernel."); + TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, "Cannot perform a semi-probabilistic calculation without output form the piping kernel."); } private PipingCalculation AsPipingCalculation(PipingOutput pipingOutput, SemiProbabilisticPipingInput semiProbabilisticPipingInput) @@ -242,5 +244,10 @@ Output = pipingOutput }; } + + private static double GetAccuracy(RoundedDouble d) + { + return Math.Pow(10.0, -d.NumberOfDecimalPlaces); + } } } \ No newline at end of file